From 3a8578103249134717574921c3d142bab4d6df94 Mon Sep 17 00:00:00 2001 From: William Jon McCann Date: Fri, 19 Oct 2007 17:26:23 +0000 Subject: Assign ids to signal handlers. Add functions to remove handlers. Restore 2007-10-19 William Jon McCann * common/gdm-signal-handler.c: (signal_io_watch), (catch_signal), (uncatch_signal), (gdm_signal_handler_add), (callback_data_free), (gdm_signal_handler_remove_and_free_data), (gdm_signal_handler_remove), (find_callback_data_by_func), (gdm_signal_handler_remove_func), (signal_list_free), (gdm_signal_handler_init), (gdm_signal_handler_finalize): * common/gdm-signal-handler.h: * daemon/gdm-server.c: (add_ready_handler), (remove_ready_handler), (gdm_server_spawn), (gdm_server_init), (gdm_server_finalize): Assign ids to signal handlers. Add functions to remove handlers. Restore sigaction when no handlers are present. Fix some memory management bugs. svn path=/trunk/; revision=5386 --- common/gdm-signal-handler.h | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'common/gdm-signal-handler.h') diff --git a/common/gdm-signal-handler.h b/common/gdm-signal-handler.h index f29d5625..609ef17e 100644 --- a/common/gdm-signal-handler.h +++ b/common/gdm-signal-handler.h @@ -56,10 +56,17 @@ GdmSignalHandler * gdm_signal_handler_new (void); void gdm_signal_handler_set_main_loop (GdmSignalHandler *handler, GMainLoop *main_loop); -void gdm_signal_handler_add (GdmSignalHandler *handler, +guint gdm_signal_handler_add (GdmSignalHandler *handler, int signal_number, GdmSignalHandlerFunc callback, gpointer data); +void gdm_signal_handler_remove (GdmSignalHandler *handler, + guint id); +void gdm_signal_handler_remove_func (GdmSignalHandler *handler, + guint signal_number, + GdmSignalHandlerFunc callback, + gpointer data); + G_END_DECLS -- cgit v1.2.1