aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Alc/mmdevapi.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/Alc/mmdevapi.c b/Alc/mmdevapi.c
index 21fed0d5..052ff6f3 100644
--- a/Alc/mmdevapi.c
+++ b/Alc/mmdevapi.c
@@ -71,7 +71,9 @@ static void *MMDevApiLoad(void)
if(!Enumerator)
{
void *mme = NULL;
- HRESULT hr = CoInitializeEx(NULL, COINIT_MULTITHREADED);
+ HRESULT hr = CoInitializeEx(NULL, COINIT_APARTMENTTHREADED);
+ if(FAILED(hr))
+ hr = CoInitializeEx(NULL, COINIT_MULTITHREADED);
if(SUCCEEDED(hr))
{
hr = CoCreateInstance(&CLSID_MMDeviceEnumerator, NULL, CLSCTX_INPROC_SERVER, &IID_IMMDeviceEnumerator, &mme);