From 242737822357c9a686df69bdb888b0d42caf1d5c Mon Sep 17 00:00:00 2001 From: Dan Winship Date: Thu, 23 Aug 2012 12:38:17 -0400 Subject: [PATCH] gmain: remove unix signal watch if its GSourceFunc returns FALSE g_unix_signal_watch_dispatch() was ignore the callback's return value. Fix that. https://bugzilla.gnome.org/show_bug.cgi?id=682560 --- glib/gmain.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/glib/gmain.c b/glib/gmain.c index 0472bd5..c0c4581 100644 --- a/glib/gmain.c +++ b/glib/gmain.c @@ -4499,6 +4499,7 @@ g_unix_signal_watch_dispatch (GSource *source, gpointer user_data) { GUnixSignalWatchSource *unix_signal_source; + gboolean again; unix_signal_source = (GUnixSignalWatchSource *) source; @@ -4509,11 +4510,11 @@ g_unix_signal_watch_dispatch (GSource *source, return FALSE; } - (callback) (user_data); + again = (callback) (user_data); unix_signal_source->pending = FALSE; - return TRUE; + return again; } static void -- 2.7.4