diff options
Diffstat (limited to 'src/plugins')
-rw-r--r-- | src/plugins/wmf/player/mfaudioendpointcontrol.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/plugins/wmf/player/mfaudioendpointcontrol.cpp b/src/plugins/wmf/player/mfaudioendpointcontrol.cpp index 39fc41c5f..c04e47f72 100644 --- a/src/plugins/wmf/player/mfaudioendpointcontrol.cpp +++ b/src/plugins/wmf/player/mfaudioendpointcontrol.cpp @@ -60,6 +60,8 @@ void MFAudioEndpointControl::clear() foreach (LPWSTR wstrID, m_devices) CoTaskMemFree(wstrID); + m_devices.clear(); + if (m_currentActivate) m_currentActivate->Release(); m_currentActivate = NULL; @@ -130,6 +132,11 @@ IMFActivate* MFAudioEndpointControl::createActivate() clear(); updateEndpoints(); + + // Check if an endpoint is available ("Default" is always inserted) + if (m_devices.count() <= 1) + return NULL; + setActiveOutput(m_defaultEndpoint); return m_currentActivate; |