]> Repos - portaudio/commitdiff
Fixed bug (when PAWIN_USE_WDMKS_DEVICE_INFO is defined) where wmme device channel...
authorrossb <rossb@0f58301d-fd10-0410-b4af-bbb618454e57>
Wed, 9 Dec 2009 01:31:44 +0000 (01:31 +0000)
committerrossb <rossb@0f58301d-fd10-0410-b4af-bbb618454e57>
Wed, 9 Dec 2009 01:31:44 +0000 (01:31 +0000)
src/hostapi/wmme/pa_win_wmme.c

index bb83686cb17fd40d7efc558ea6c6fd3ba4bf29b9..4afef9c1afa2c2eddcc762403a1fcaaaf64a64a3 100644 (file)
@@ -820,6 +820,7 @@ static PaError InitializeOutputDeviceInfo( PaWinMmeHostApiRepresentation *winMme
     MMRESULT mmresult;
     WAVEOUTCAPS woc;
     PaDeviceInfo *deviceInfo = &winMmeDeviceInfo->inheritedDeviceInfo;
+    int wdmksDeviceOutputChannelCountIsKnown;
 
     *success = 0;
 
@@ -885,8 +886,10 @@ static PaError InitializeOutputDeviceInfo( PaWinMmeHostApiRepresentation *winMme
     }
 
 #ifdef PAWIN_USE_WDMKS_DEVICE_INFO
-    winMmeDeviceInfo->deviceOutputChannelCountIsKnown = 
-            QueryWaveOutKSFilterMaxChannels( winMmeOutputDeviceId, &deviceInfo->maxOutputChannels );
+    wdmksDeviceOutputChannelCountIsKnown = QueryWaveOutKSFilterMaxChannels( 
+                       winMmeOutputDeviceId, &deviceInfo->maxOutputChannels );
+    if( wdmksDeviceOutputChannelCountIsKnown && !winMmeDeviceInfo->deviceOutputChannelCountIsKnown )
+        winMmeDeviceInfo->deviceOutputChannelCountIsKnown = 1;
 #endif /* PAWIN_USE_WDMKS_DEVICE_INFO */
 
     winMmeDeviceInfo->dwFormats = woc.dwFormats;