destroy main window before breaking gtk main loop
authorJean-Philippe Orsini <jeanfi@gmail.com>
Tue, 14 Jun 2011 21:07:42 +0000 (21:07 +0000)
committerJean-Philippe Orsini <jeanfi@gmail.com>
Tue, 14 Jun 2011 21:07:42 +0000 (21:07 +0000)
src/ui.c
src/ui.h
src/ui_graph.c

index 1590cea..d795d15 100644 (file)
--- a/src/ui.c
+++ b/src/ui.c
@@ -61,7 +61,7 @@ static void cb_about(GtkMenuItem *mi, gpointer data)
 
 static void cb_menu_quit(GtkMenuItem *mi, gpointer data)
 {
-       ui_psensor_quit();
+       ui_psensor_quit((struct ui_psensor *)data);
 }
 
 static void cb_preferences(GtkMenuItem *mi, gpointer data)
@@ -77,8 +77,9 @@ static void cb_sensor_preferences(GtkMenuItem *mi, gpointer data)
                ui_sensorpref_dialog_run(*ui->sensors, ui);
 }
 
-void ui_psensor_quit()
+void ui_psensor_quit(struct ui_psensor *ui)
 {
+       gtk_widget_destroy(ui->main_window);
        gtk_main_quit();
 }
 
index 4824bce..9410274 100644 (file)
--- a/src/ui.h
+++ b/src/ui.h
@@ -85,7 +85,7 @@ void ui_window_update(struct ui_psensor *);
 /*
   Must be called to terminate Psensor UI.
 */
-void ui_psensor_quit();
+void ui_psensor_quit(struct ui_psensor *ui);
 
 /*
   Creates the main GTK window
index 14fb6ef..2edd8c7 100644 (file)
@@ -24,7 +24,7 @@
 
 static void cb_menu_quit(GtkMenuItem *mi, gpointer data)
 {
-       ui_psensor_quit();
+       ui_psensor_quit((struct ui_psensor *)data);
 }
 
 static void cb_preferences(GtkMenuItem *mi, gpointer data)