[gnome-panel] handle SIGTERM and SIGINT



commit 073baaf19a120d1cc67362833bb5c73c6c9daecf
Author: Alberts Muktupāvels <alberts muktupavels gmail com>
Date:   Fri Nov 7 03:56:38 2014 +0200

    handle SIGTERM and SIGINT

 gnome-panel/main.c |   18 ++++++++++++++++++
 1 files changed, 18 insertions(+), 0 deletions(-)
---
diff --git a/gnome-panel/main.c b/gnome-panel/main.c
index ada0789..9aec111 100644
--- a/gnome-panel/main.c
+++ b/gnome-panel/main.c
@@ -13,6 +13,7 @@
 #include <sys/wait.h>
 
 #include <glib/gi18n.h>
+#include <glib-unix.h>
 
 #include <libegg/eggdesktopfile.h>
 #include <libegg/eggsmclient.h>
@@ -75,6 +76,20 @@ theme_changed (GtkSettings *settings)
        g_free (theme);
 }
 
+static gboolean
+on_term_signal (gpointer user_data)
+{
+       gtk_main_quit ();
+       return FALSE;
+}
+
+static gboolean
+on_int_signal (gpointer user_data)
+{
+       gtk_main_quit ();
+       return FALSE;
+}
+
 int
 main (int argc, char **argv)
 {
@@ -104,6 +119,9 @@ main (int argc, char **argv)
 
        gtk_init (&argc, &argv);
 
+       g_unix_signal_add (SIGTERM, on_term_signal, NULL);
+       g_unix_signal_add (SIGINT, on_int_signal, NULL);
+
        error = NULL;
        if (!g_option_context_parse (context, &argc, &argv, &error)) {
                g_printerr ("%s\n", error->message);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]