File push-glib-context.diff of Package libqt4
commit aa88b7044dd86850e6986aa80104bb38bb7b12eb
Author: Philip Van Hoof <philip@codeminded.be>
Date: Mon Nov 1 16:59:44 2010 +0100
Push and pop the thread-default context for the current thread
Merge-request: 869
Reviewed-by: Thiago Macieira <thiago.macieira@nokia.com>
--- src/corelib/kernel/qeventdispatcher_glib.cpp
+++ src/corelib/kernel/qeventdispatcher_glib.cpp
@@ -313,6 +313,10 @@ QEventDispatcherGlibPrivate::QEventDispatcherGlibPrivate(GMainContext *context)
}
}
+#if GLIB_CHECK_VERSION (2, 22, 0)
+ g_main_context_push_thread_default (mainContext);
+#endif
+
// setup post event source
postEventSource = reinterpret_cast<GPostEventSource *>(g_source_new(&postEventSourceFuncs,
sizeof(GPostEventSource)));
@@ -391,6 +395,9 @@ QEventDispatcherGlib::~QEventDispatcherGlib()
d->postEventSource = 0;
Q_ASSERT(d->mainContext != 0);
+#if GLIB_CHECK_VERSION (2, 22, 0)
+ g_main_context_pop_thread_default (d->mainContext);
+#endif
g_main_context_unref(d->mainContext);
d->mainContext = 0;
}