win-wasapi: Verify and balance CoInitializeEx call
This commit is contained in:
parent
f09c7d0430
commit
7d3e086e6f
@ -386,7 +386,14 @@ DWORD WINAPI WASAPISource::ReconnectThread(LPVOID param)
|
||||
|
||||
os_set_thread_name("win-wasapi: reconnect thread");
|
||||
|
||||
CoInitializeEx(0, COINIT_MULTITHREADED);
|
||||
const HRESULT hr = CoInitializeEx(0, COINIT_MULTITHREADED);
|
||||
const bool com_initialized = SUCCEEDED(hr);
|
||||
if (!com_initialized) {
|
||||
blog(LOG_ERROR,
|
||||
"[WASAPISource::ReconnectThread]"
|
||||
" CoInitializeEx failed: 0x%08X",
|
||||
hr);
|
||||
}
|
||||
|
||||
obs_monitoring_type type =
|
||||
obs_source_get_monitoring_type(source->source);
|
||||
@ -400,6 +407,9 @@ DWORD WINAPI WASAPISource::ReconnectThread(LPVOID param)
|
||||
|
||||
obs_source_set_monitoring_type(source->source, type);
|
||||
|
||||
if (com_initialized)
|
||||
CoUninitialize();
|
||||
|
||||
source->reconnectThread = nullptr;
|
||||
source->reconnecting = false;
|
||||
return 0;
|
||||
|
Loading…
x
Reference in New Issue
Block a user