# HG changeset patch # User Eric Polino # Date 1184184191 0 # Node ID 01492d7d89d0d5b48a07c3746d22fcf7ce05bc00 # Parent 5a6f174bf6ddc64e14bef7ec4de581790b782063 Cleaned up a few missing NULL checks in GntWM Put a few comments about a warning and other potential NULL checks missing. diff -r 5a6f174bf6dd -r 01492d7d89d0 finch/libgnt/gntwm.c --- a/finch/libgnt/gntwm.c Wed Jul 11 16:20:12 2007 +0000 +++ b/finch/libgnt/gntwm.c Wed Jul 11 20:03:11 2007 +0000 @@ -735,6 +735,7 @@ print = ch; #ifndef NO_WIDECHAR if (wch.chars[0] > 255) { + /* XXX This lines throws a warning, can we quiet it? */ snprintf(unicode, sizeof(unicode), "&#x%x;", wch.chars[0]); print = unicode; } @@ -803,6 +804,9 @@ if (wm->_list.window) return TRUE; + if(!wm->cws->ordered) + return FALSE; + shift_window(wm, wm->cws->ordered->data, -1); return TRUE; } @@ -811,9 +815,13 @@ shift_right(GntBindable *bindable, GList *null) { GntWM *wm = GNT_WM(bindable); + if (wm->_list.window) return TRUE; + if(!wm->cws->ordered) + return FALSE; + shift_window(wm, wm->cws->ordered->data, 1); return TRUE; } @@ -1146,7 +1154,13 @@ help_for_window(GntBindable *bindable, GList *null) { GntWM *wm = GNT_WM(bindable); - GntWidget *widget = wm->cws->ordered->data; + GntWidget *widget; + + + if(!wm->cws->ordered) + return FALSE; + + widget = wm->cws->ordered->data; return help_for_bindable(wm,GNT_BINDABLE(widget)); } @@ -1947,7 +1961,8 @@ if (!node) return; - + + /* XXX Should there be a check before access to 'data' to make sure 'ordered' isn't NULL? */ if (widget != wm->_list.window && !GNT_IS_MENU(widget) && wm->cws->ordered->data != widget) { GntWidget *w = wm->cws->ordered->data; @@ -2009,6 +2024,7 @@ GntWS *ws = gnt_wm_widget_find_workspace(wm, widget); if (wm->cws != ws) gnt_wm_switch_workspace(wm, g_list_index(wm->workspaces, ws)); + /* XXX Should there be a check before access to 'data' to make sure 'ordered' isn't NULL? */ if (widget != wm->cws->ordered->data) { GntWidget *wid = wm->cws->ordered->data; wm->cws->ordered = g_list_bring_to_front(wm->cws->ordered, widget);