From cfefa0206dce3e144ee51383d81a146719b64737 Mon Sep 17 00:00:00 2001 From: "Lubomir I. Ivanov" Date: Tue, 2 Oct 2012 01:52:43 +0300 Subject: [PATCH] Destroy the divelist (tree) before calling gtk_main_quit() Added new function dive_list_destroy() in divelist.c Signed-off-by: Lubomir I. Ivanov Signed-off-by: Dirk Hohndel --- display-gtk.h | 1 + divelist.c | 5 +++++ gtk-gui.c | 2 ++ 3 files changed, 8 insertions(+) diff --git a/display-gtk.h b/display-gtk.h index b75515232..7b2ce5f2e 100644 --- a/display-gtk.h +++ b/display-gtk.h @@ -74,6 +74,7 @@ extern GtkWidget *cylinder_list_widget(int w_idx); extern GtkWidget *weightsystem_list_widget(int w_idx); extern GtkWidget *dive_list_create(void); +extern void dive_list_destroy(void); unsigned int amount_selected; diff --git a/divelist.c b/divelist.c index 2d6c6fdcf..9bdee1571 100644 --- a/divelist.c +++ b/divelist.c @@ -2294,6 +2294,11 @@ GtkWidget *dive_list_create(void) return dive_list.container_widget; } +void dive_list_destroy(void) +{ + gtk_widget_destroy(dive_list.tree_view); +} + void mark_divelist_changed(int changed) { dive_list.changed = changed; diff --git a/gtk-gui.c b/gtk-gui.c index 0a4ee48e9..5a680c776 100644 --- a/gtk-gui.c +++ b/gtk-gui.c @@ -356,6 +356,7 @@ static gboolean on_delete(GtkWidget* w, gpointer data) static void on_destroy(GtkWidget* w, gpointer data) { + dive_list_destroy(); gtk_main_quit(); } @@ -369,6 +370,7 @@ void quit(GtkWidget *w, gpointer data) quit = ask_save_changes(); if (quit){ + dive_list_destroy(); gtk_main_quit(); } }