diff --git a/backends/libpurple/spectrumeventloop.cpp b/backends/libpurple/spectrumeventloop.cpp index 0ca6395e2a8f93f638ac2c24d8b900acc23528af..d426073c9a9ec4203f4e67c6b35906ffc409841b 100644 --- a/backends/libpurple/spectrumeventloop.cpp +++ b/backends/libpurple/spectrumeventloop.cpp @@ -100,5 +100,6 @@ void SpectrumEventLoop::post(const Event& event) { // pass copy of event to main thread Event *ev = new Event(event); LOG4CXX_INFO(logger, "posting event to main thread " << ev); - purple_timeout_add(0, processEvent, ev); + g_main_context_invoke(g_main_loop_get_context(m_loop), processEvent, ev); +// purple_timeout_add(0, processEvent, ev); }