# HG changeset patch # User Sadrul Habib Chowdhury # Date 1161059695 0 # Node ID 87fe294744aa6618105cc22c3b6e4b2f3590fc18 # Parent d1eb55b1b28d7790760919b0fd7ca8cc77cae4cd [gaim-migrate @ 17493] Patch from Richard Nelson (wabz). This will allow the WM to do stuff when a window is closed. Also, ignore SIGPIPE, although this doesn't seem to help. committer: Tailor Script diff -r d1eb55b1b28d -r 87fe294744aa console/libgnt/gntmain.c --- a/console/libgnt/gntmain.c Tue Oct 17 04:07:19 2006 +0000 +++ b/console/libgnt/gntmain.c Tue Oct 17 04:34:55 2006 +0000 @@ -268,7 +268,8 @@ GNT_WIDGET_UNSET_FLAGS(w, GNT_WIDGET_URGENT); if (wm.window_update) { GntNode *node = g_hash_table_lookup(nodes, w); - wm.window_update(node->panel, w); + if (node) + wm.window_update(node->panel, w); } } else if (GNT_WIDGET_IS_FLAG_SET(w, GNT_WIDGET_URGENT)) { /* This is a window with the URGENT hint set */ @@ -1158,6 +1159,7 @@ signal(SIGWINCH, sighandler); #endif signal(SIGCHLD, sighandler); + signal(SIGPIPE, SIG_IGN); g_type_init(); @@ -1225,6 +1227,9 @@ if (node == NULL) /* Yay! Nothing to do. */ return; + if (GNT_WIDGET_IS_FLAG_SET(widget, GNT_WIDGET_DESTROYING) && wm.close_window) + wm.close_window(widget); + g_hash_table_remove(nodes, widget); if (window_list)