summaryrefslogtreecommitdiffstats
path: root/src/corelib
diff options
context:
space:
mode:
authorPhilip Van Hoof <philip@codeminded.be>2010-11-01 15:59:44 (GMT)
committerThiago Macieira <thiago.macieira@nokia.com>2010-11-11 09:41:33 (GMT)
commit661c9f93a90a8855c4dd8b6a215312387387ee9c (patch)
treef78b5566e11dc2ac2d730f9afffe85bddcc285fb /src/corelib
parent772fbf9f5fb7578c5006f4f8a98856b8546f1f71 (diff)
downloadQt-661c9f93a90a8855c4dd8b6a215312387387ee9c.zip
Qt-661c9f93a90a8855c4dd8b6a215312387387ee9c.tar.gz
Qt-661c9f93a90a8855c4dd8b6a215312387387ee9c.tar.bz2
Push and pop the thread-default context for the current thread
Merge-request: 869 Reviewed-by: Thiago Macieira <thiago.macieira@nokia.com> (cherry picked from commit aa88b7044dd86850e6986aa80104bb38bb7b12eb)
Diffstat (limited to 'src/corelib')
-rw-r--r--src/corelib/kernel/qeventdispatcher_glib.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/corelib/kernel/qeventdispatcher_glib.cpp b/src/corelib/kernel/qeventdispatcher_glib.cpp
index 8390275..6fa2707 100644
--- a/src/corelib/kernel/qeventdispatcher_glib.cpp
+++ b/src/corelib/kernel/qeventdispatcher_glib.cpp
@@ -311,6 +311,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)));
@@ -389,6 +393,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;
}