From 1de459a6dddd1671164b171ff36d87b18f07b700 Mon Sep 17 00:00:00 2001 From: Maurice Kalinowski Date: Tue, 5 Nov 2013 15:26:55 +0100 Subject: [PATCH] use apartment threading for CoInitializeEx otherwise we are risking a lock by freeing resources from other threads when calling CoUnitialized() Change-Id: I1fe09d7d3b1674a00b44ababfc90da79580278b3 Reviewed-by: Friedemann Kleint --- src/corelib/kernel/qeventdispatcher_winrt.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/corelib/kernel/qeventdispatcher_winrt.cpp b/src/corelib/kernel/qeventdispatcher_winrt.cpp index c94c69b90f9..daef8428e1a 100644 --- a/src/corelib/kernel/qeventdispatcher_winrt.cpp +++ b/src/corelib/kernel/qeventdispatcher_winrt.cpp @@ -317,7 +317,7 @@ QEventDispatcherWinRTPrivate::QEventDispatcherWinRTPrivate() : interrupt(false) , timerFactory(0) { - CoInitializeEx(NULL, COINIT_MULTITHREADED); + CoInitializeEx(NULL, COINIT_APARTMENTTHREADED); HRESULT hr = GetActivationFactory(HString::MakeReference(RuntimeClass_Windows_System_Threading_ThreadPoolTimer).Get(), &timerFactory); if (FAILED(hr)) qWarning("QEventDispatcherWinRTPrivate::QEventDispatcherWinRTPrivate: Could not obtain timer factory: %lx", hr);