diff --git a/glib/gmain.c b/glib/gmain.c index 5ad177aec..502ba797d 100644 --- a/glib/gmain.c +++ b/glib/gmain.c @@ -3046,6 +3046,7 @@ g_main_dispatch (GMainContext *context) * and not modified from anywhere but this function. */ prev_source = current->source; + current->source = source; current->depth++; need_destroy = !(* dispatch) (source, callback, user_data);