summaryrefslogtreecommitdiffstats
path: root/src/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/wmf/player/mfaudioendpointcontrol.cpp7
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;