From e4d09234e0fed7127d7b30148ca850da76c4ffeb Mon Sep 17 00:00:00 2001 From: yangxx Date: Sun, 1 Feb 2004 15:56:53 +0000 Subject: [PATCH] git-svn-id: http://ltt.polymtl.ca/svn@469 04897980-b3bd-0310-b5e0-8ef037075253 --- .../poly/lttv/modules/gui/detailedevents/events.c | 3 ++- .../poly/lttv/modules/gui/main/src/callbacks.c | 13 +++++++++++-- .../poly/lttv/modules/gui/statistics/statistics.c | 1 + 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/ltt/branches/poly/lttv/modules/gui/detailedevents/events.c b/ltt/branches/poly/lttv/modules/gui/detailedevents/events.c index 3c8f271b..7a9b0b8b 100644 --- a/ltt/branches/poly/lttv/modules/gui/detailedevents/events.c +++ b/ltt/branches/poly/lttv/modules/gui/detailedevents/events.c @@ -1201,6 +1201,7 @@ gui_events_free(EventViewerData *event_viewer_data) unreg_show_viewer(show_event_detail,event_viewer_data, event_viewer_data->mw); unreg_update_traceset(traceset_changed,event_viewer_data, event_viewer_data->mw); + g_free(event_viewer_data->filter_key); g_event_viewer_data_list = g_slist_remove(g_event_viewer_data_list, event_viewer_data); g_free(event_viewer_data); } @@ -1213,8 +1214,8 @@ gui_events_destructor(EventViewerData *event_viewer_data) /* May already been done by GTK window closing */ if(GTK_IS_WIDGET(event_viewer_data->hbox_v)){ + gui_events_free(event_viewer_data); gtk_widget_destroy(event_viewer_data->hbox_v); - g_free(event_viewer_data->filter_key); event_viewer_data = NULL; } diff --git a/ltt/branches/poly/lttv/modules/gui/main/src/callbacks.c b/ltt/branches/poly/lttv/modules/gui/main/src/callbacks.c index 76920ae6..98585271 100644 --- a/ltt/branches/poly/lttv/modules/gui/main/src/callbacks.c +++ b/ltt/branches/poly/lttv/modules/gui/main/src/callbacks.c @@ -1133,10 +1133,19 @@ void on_MWindow_destroy (GtkObject *object, gpointer user_data) { - MainWindow *Main_Window = (MainWindow*)user_data; - + MainWindow *Main_Window = get_window_data_struct((GtkWidget*)object); + GtkWidget *widget; + Tab *tab = Main_Window->tab; + g_printf("There are : %d windows\n",g_slist_length(g_main_window_list)); + while(tab){ + while(tab->multi_vpaned->num_children){ + gtk_multi_vpaned_widget_delete(tab->multi_vpaned); + } + tab = tab->next; + } + g_win_count--; if(g_win_count == 0) gtk_main_quit (); diff --git a/ltt/branches/poly/lttv/modules/gui/statistics/statistics.c b/ltt/branches/poly/lttv/modules/gui/statistics/statistics.c index 8c241c64..04ca3a7d 100644 --- a/ltt/branches/poly/lttv/modules/gui/statistics/statistics.c +++ b/ltt/branches/poly/lttv/modules/gui/statistics/statistics.c @@ -191,6 +191,7 @@ gui_statistic_destructor(StatisticViewerData *statistic_viewer_data) { /* May already been done by GTK window closing */ if(GTK_IS_WIDGET(statistic_viewer_data->hpaned_v)){ + gui_statistic_free(statistic_viewer_data); gtk_widget_destroy(statistic_viewer_data->hpaned_v); statistic_viewer_data = NULL; } -- 2.34.1