Make clang happier
authorMikael Magnusson <mikachu@gmail.com>
Thu, 5 Nov 2009 21:29:38 +0000 (22:29 +0100)
committerDana Jansens <danakj@orodu.net>
Sat, 7 Nov 2009 22:07:05 +0000 (17:07 -0500)
Add asserts to default: in switch statements
Store pointed to variables locally so it knows they don't change
Remove some dead assignments
Mark ob_exit_with_error as noreturn
Use "%s", msg instead of just msg to printf style functions
Use the c_pfocus variable

19 files changed:
obt/parse.c
openbox/actions/desktop.c
openbox/actions/moverelative.c
openbox/actions/session.c
openbox/client.c
openbox/config.c
openbox/debug.c
openbox/event.c
openbox/focus_cycle_popup.c
openbox/menuframe.c
openbox/moveresize.c
openbox/openbox.c
openbox/openbox.h
openbox/popup.c
openbox/prompt.c
openbox/resist.c
openbox/screen.c
openbox/stacking.c
render/font.c

index d181b67..a792188 100644 (file)
@@ -99,7 +99,7 @@ void obt_parse_register(ObtParseInst *i, const gchar *tag,
 {
     struct Callback *c;
 
 {
     struct Callback *c;
 
-    if ((c = g_hash_table_lookup(i->callbacks, tag))) {
+    if (g_hash_table_lookup(i->callbacks, tag)) {
         g_error("Tag '%s' already registered", tag);
         return;
     }
         g_error("Tag '%s' already registered", tag);
         return;
     }
index 50caa22..3b33afb 100644 (file)
@@ -179,6 +179,8 @@ static gboolean run_func(ObActionsData *data, gpointer options)
         d = screen_find_desktop(screen_desktop,
                                 o->u.rel.dir, o->u.rel.wrap, o->u.rel.linear);
         break;
         d = screen_find_desktop(screen_desktop,
                                 o->u.rel.dir, o->u.rel.wrap, o->u.rel.linear);
         break;
+    default:
+        g_assert_not_reached();
     }
 
     if (d < screen_num_desktops && d != screen_desktop) {
     }
 
     if (d < screen_num_desktops && d != screen_desktop) {
index ccdff54..4e6e599 100644 (file)
@@ -42,15 +42,15 @@ static gboolean run_func(ObActionsData *data, gpointer options)
         gint x, y, lw, lh, w, h;
 
         c = data->client;
         gint x, y, lw, lh, w, h;
 
         c = data->client;
-        x = data->client->area.x + o->x;
-        y = data->client->area.y + o->y;
-        w = data->client->area.width;
-        h = data->client->area.height;
-        client_try_configure(data->client, &x, &y, &w, &h, &lw, &lh, TRUE);
-        client_find_onscreen(data->client, &x, &y, w, h, FALSE);
+        x = c->area.x + o->x;
+        y = c->area.y + o->y;
+        w = c->area.width;
+        h = c->area.height;
+        client_try_configure(c, &x, &y, &w, &h, &lw, &lh, TRUE);
+        client_find_onscreen(c, &x, &y, w, h, FALSE);
 
         actions_client_move(data, TRUE);
 
         actions_client_move(data, TRUE);
-        client_configure(data->client, x, y, w, h, TRUE, TRUE, FALSE);
+        client_configure(c, x, y, w, h, TRUE, TRUE, FALSE);
         actions_client_move(data, FALSE);
     }
 
         actions_client_move(data, FALSE);
     }
 
index 58652ad..b9e33b7 100644 (file)
@@ -33,9 +33,9 @@ static gpointer setup_func(xmlNodePtr node)
 
 static gboolean prompt_cb(ObPrompt *p, gint result, gpointer data)
 {
 
 static gboolean prompt_cb(ObPrompt *p, gint result, gpointer data)
 {
-    Options *o = data;
     if (result) {
 #ifdef USE_SM
     if (result) {
 #ifdef USE_SM
+        Options *o = data;
         session_request_logout(o->silent);
 #else
         /* TRANSLATORS: Don't translate the word "SessionLogout" as it's the
         session_request_logout(o->silent);
 #else
         /* TRANSLATORS: Don't translate the word "SessionLogout" as it's the
index a62aa5b..5bf22fb 100644 (file)
@@ -2378,7 +2378,7 @@ ObClient *client_search_focus_tree_full(ObClient *self)
 
         for (it = self->parents; it; it = g_slist_next(it)) {
             ObClient *c = it->data;
 
         for (it = self->parents; it; it = g_slist_next(it)) {
             ObClient *c = it->data;
-            if ((c = client_search_focus_tree_full(it->data))) return c;
+            if ((c = client_search_focus_tree_full(c))) return c;
         }
 
         return NULL;
         }
 
         return NULL;
@@ -3639,6 +3639,8 @@ void client_set_state(ObClient *self, Atom action, glong data1, glong data2)
                 value = self->demands_attention;
             else if (state == OBT_PROP_ATOM(OB_WM_STATE_UNDECORATED))
                 value = undecorated;
                 value = self->demands_attention;
             else if (state == OBT_PROP_ATOM(OB_WM_STATE_UNDECORATED))
                 value = undecorated;
+            else
+                g_assert_not_reached();
             action = value ? OBT_PROP_ATOM(NET_WM_STATE_REMOVE) :
                              OBT_PROP_ATOM(NET_WM_STATE_ADD);
         }
             action = value ? OBT_PROP_ATOM(NET_WM_STATE_REMOVE) :
                              OBT_PROP_ATOM(NET_WM_STATE_ADD);
         }
index e3be728..9e111b8 100644 (file)
@@ -200,7 +200,7 @@ static void parse_per_app_settings(xmlNodePtr node, gpointer d)
     gboolean x_pos_given;
 
     while (app) {
     gboolean x_pos_given;
 
     while (app) {
-        name_set = class_set = type_set = x_pos_given = FALSE;
+        x_pos_given = FALSE;
 
         class_set = obt_parse_attr_string(app, "class", &class);
         name_set = obt_parse_attr_string(app, "name", &name);
 
         class_set = obt_parse_attr_string(app, "class", &class);
         name_set = obt_parse_attr_string(app, "name", &name);
index db18784..c1180c3 100644 (file)
@@ -161,7 +161,7 @@ static inline void log_argv(ObDebugType type,
         g_free(a);
     }
 
         g_free(a);
     }
 
-    g_debug(message);
+    g_debug("%s", message);
     g_free(message);
 }
 
     g_free(message);
 }
 
index 3f5c154..2c73289 100644 (file)
@@ -417,6 +417,7 @@ static void print_focusevent(XEvent *e)
     case NotifyGrab:         modestr="NotifyGrab";         break;
     case NotifyUngrab:       modestr="NotifyUngrab";       break;
     case NotifyWhileGrabbed: modestr="NotifyWhileGrabbed"; break;
     case NotifyGrab:         modestr="NotifyGrab";         break;
     case NotifyUngrab:       modestr="NotifyUngrab";       break;
     case NotifyWhileGrabbed: modestr="NotifyWhileGrabbed"; break;
+    default:                 g_assert_not_reached();
     }
     switch (detail) {
     case NotifyAncestor:    detailstr="NotifyAncestor";    break;
     }
     switch (detail) {
     case NotifyAncestor:    detailstr="NotifyAncestor";    break;
@@ -427,6 +428,7 @@ static void print_focusevent(XEvent *e)
     case NotifyPointer:     detailstr="NotifyPointer";     break;
     case NotifyPointerRoot: detailstr="NotifyPointerRoot"; break;
     case NotifyDetailNone:  detailstr="NotifyDetailNone";  break;
     case NotifyPointer:     detailstr="NotifyPointer";     break;
     case NotifyPointerRoot: detailstr="NotifyPointerRoot"; break;
     case NotifyDetailNone:  detailstr="NotifyDetailNone";  break;
+    default:                g_assert_not_reached();
     }
 
     if (mode == NotifyGrab || mode == NotifyUngrab)
     }
 
     if (mode == NotifyGrab || mode == NotifyUngrab)
@@ -1598,6 +1600,8 @@ static void event_handle_client(ObClient *client, XEvent *e)
                         client->shaped_input = ((XShapeEvent*)e)->shaped;
                         kind = ShapeInput;
                         break;
                         client->shaped_input = ((XShapeEvent*)e)->shaped;
                         kind = ShapeInput;
                         break;
+                    default:
+                        g_assert_not_reached();
                 }
                 frame_adjust_shape_kind(client->frame, kind);
             }
                 }
                 frame_adjust_shape_kind(client->frame, kind);
             }
index c7921fa..8a87f66 100644 (file)
@@ -326,10 +326,10 @@ static void popup_render(ObFocusCyclePopup *p, const ObClient *c)
     gint l, t, r, b;
     gint x, y, w, h;
     Rect *screen_area = NULL;
     gint l, t, r, b;
     gint x, y, w, h;
     Rect *screen_area = NULL;
-    gint rgbax, rgbay, rgbaw, rgbah;
     gint i;
     GList *it;
     const ObFocusCyclePopupTarget *newtarget;
     gint i;
     GList *it;
     const ObFocusCyclePopupTarget *newtarget;
+    ObFocusCyclePopupMode mode = p->mode;
     gint icons_per_row;
     gint icon_rows;
     gint textw, texth;
     gint icons_per_row;
     gint icon_rows;
     gint textw, texth;
@@ -347,8 +347,8 @@ static void popup_render(ObFocusCyclePopup *p, const ObClient *c)
     gint up_arrow_y, down_arrow_y;
     gboolean showing_arrows = FALSE;
 
     gint up_arrow_y, down_arrow_y;
     gboolean showing_arrows = FALSE;
 
-    g_assert(p->mode == OB_FOCUS_CYCLE_POPUP_MODE_ICONS ||
-             p->mode == OB_FOCUS_CYCLE_POPUP_MODE_LIST);
+    g_assert(mode == OB_FOCUS_CYCLE_POPUP_MODE_ICONS ||
+             mode == OB_FOCUS_CYCLE_POPUP_MODE_LIST);
 
     screen_area = screen_physical_area_active();
 
 
     screen_area = screen_physical_area_active();
 
@@ -363,7 +363,7 @@ static void popup_render(ObFocusCyclePopup *p, const ObClient *c)
 
     /* get the width from the text and keep it within limits */
     w = l + r + p->maxtextw;
 
     /* get the width from the text and keep it within limits */
     w = l + r + p->maxtextw;
-    if (p->mode == OB_FOCUS_CYCLE_POPUP_MODE_LIST)
+    if (mode == OB_FOCUS_CYCLE_POPUP_MODE_LIST)
         /* when in list mode, there are icons down the side */
         w += list_mode_icon_column_w;
     w = MIN(w, MAX(screen_area->width/3, POPUP_WIDTH)); /* max width */
         /* when in list mode, there are icons down the side */
         w += list_mode_icon_column_w;
     w = MIN(w, MAX(screen_area->width/3, POPUP_WIDTH)); /* max width */
@@ -371,12 +371,12 @@ static void popup_render(ObFocusCyclePopup *p, const ObClient *c)
 
     /* get the text height */
     texth = RrMinHeight(p->a_hilite_text);
 
     /* get the text height */
     texth = RrMinHeight(p->a_hilite_text);
-    if (p->mode == OB_FOCUS_CYCLE_POPUP_MODE_LIST)
+    if (mode == OB_FOCUS_CYCLE_POPUP_MODE_LIST)
         texth = MAX(MAX(texth, RrMinHeight(p->a_text)), HILITE_SIZE);
     else
         texth += TEXT_BORDER * 2;
 
         texth = MAX(MAX(texth, RrMinHeight(p->a_text)), HILITE_SIZE);
     else
         texth += TEXT_BORDER * 2;
 
-    if (p->mode == OB_FOCUS_CYCLE_POPUP_MODE_ICONS) {
+    if (mode == OB_FOCUS_CYCLE_POPUP_MODE_ICONS) {
         /* how many icons will fit in that row? make the width fit that */
         w -= l + r;
         icons_per_row = (w + HILITE_SIZE - 1) / HILITE_SIZE;
         /* how many icons will fit in that row? make the width fit that */
         w -= l + r;
         icons_per_row = (w + HILITE_SIZE - 1) / HILITE_SIZE;
@@ -398,7 +398,7 @@ static void popup_render(ObFocusCyclePopup *p, const ObClient *c)
 
     /* get the text width */
     textw = w - l - r;
 
     /* get the text width */
     textw = w - l - r;
-    if (p->mode == OB_FOCUS_CYCLE_POPUP_MODE_LIST)
+    if (mode == OB_FOCUS_CYCLE_POPUP_MODE_LIST)
         /* leave space on the side for the icons */
         textw -= list_mode_icon_column_w;
 
         /* leave space on the side for the icons */
         textw -= list_mode_icon_column_w;
 
@@ -408,7 +408,7 @@ static void popup_render(ObFocusCyclePopup *p, const ObClient *c)
 
     /* find the height of the dialog */
     h = t + b + (icon_rows * MAX(HILITE_SIZE, texth));
 
     /* find the height of the dialog */
     h = t + b + (icon_rows * MAX(HILITE_SIZE, texth));
-    if (p->mode == OB_FOCUS_CYCLE_POPUP_MODE_ICONS)
+    if (mode == OB_FOCUS_CYCLE_POPUP_MODE_ICONS)
         /* in icon mode the text sits below the icons, so make some space */
         h += OUTSIDE_BORDER + texth;
 
         /* in icon mode the text sits below the icons, so make some space */
         h += OUTSIDE_BORDER + texth;
 
@@ -427,7 +427,7 @@ static void popup_render(ObFocusCyclePopup *p, const ObClient *c)
 
     /* scroll the list if needed */
     last_scroll = p->scroll;
 
     /* scroll the list if needed */
     last_scroll = p->scroll;
-    if (p->mode == OB_FOCUS_CYCLE_POPUP_MODE_LIST) {
+    if (mode == OB_FOCUS_CYCLE_POPUP_MODE_LIST) {
         const gint top = p->scroll + SCROLL_MARGIN;
         const gint bottom = p->scroll + icon_rows - SCROLL_MARGIN;
         const gint min_scroll = 0;
         const gint top = p->scroll + SCROLL_MARGIN;
         const gint bottom = p->scroll + icon_rows - SCROLL_MARGIN;
         const gint min_scroll = 0;
@@ -443,14 +443,14 @@ static void popup_render(ObFocusCyclePopup *p, const ObClient *c)
     }
 
     /* show the scroll arrows when appropriate */
     }
 
     /* show the scroll arrows when appropriate */
-    if (p->scroll && p->mode == OB_FOCUS_CYCLE_POPUP_MODE_LIST) {
+    if (p->scroll && mode == OB_FOCUS_CYCLE_POPUP_MODE_LIST) {
         XMapWindow(obt_display, p->list_mode_up);
         showing_arrows = TRUE;
     } else
         XUnmapWindow(obt_display, p->list_mode_up);
 
     if (p->scroll < p->n_targets - icon_rows &&
         XMapWindow(obt_display, p->list_mode_up);
         showing_arrows = TRUE;
     } else
         XUnmapWindow(obt_display, p->list_mode_up);
 
     if (p->scroll < p->n_targets - icon_rows &&
-        p->mode == OB_FOCUS_CYCLE_POPUP_MODE_LIST)
+        mode == OB_FOCUS_CYCLE_POPUP_MODE_LIST)
     {
         XMapWindow(obt_display, p->list_mode_down);
         showing_arrows = TRUE;
     {
         XMapWindow(obt_display, p->list_mode_down);
         showing_arrows = TRUE;
@@ -463,12 +463,12 @@ static void popup_render(ObFocusCyclePopup *p, const ObClient *c)
             + ob_rr_theme->down_arrow_mask->height + OUTSIDE_BORDER;
 
     /* center the icons if there is less than one row */
             + ob_rr_theme->down_arrow_mask->height + OUTSIDE_BORDER;
 
     /* center the icons if there is less than one row */
-    if (p->mode == OB_FOCUS_CYCLE_POPUP_MODE_ICONS && icon_rows == 1)
+    if (mode == OB_FOCUS_CYCLE_POPUP_MODE_ICONS && icon_rows == 1)
         icons_center_x = (w - p->n_targets * HILITE_SIZE) / 2;
     else
         icons_center_x = 0;
 
         icons_center_x = (w - p->n_targets * HILITE_SIZE) / 2;
     else
         icons_center_x = 0;
 
-    if (p->mode == OB_FOCUS_CYCLE_POPUP_MODE_ICONS) {
+    if (mode == OB_FOCUS_CYCLE_POPUP_MODE_ICONS) {
         /* get the position of the text */
         icon_mode_textx = l;
         icon_mode_texty = h - texth - b;
         /* get the position of the text */
         icon_mode_textx = l;
         icon_mode_texty = h - texth - b;
@@ -480,17 +480,11 @@ static void popup_render(ObFocusCyclePopup *p, const ObClient *c)
     y = screen_area->y + (screen_area->height -
                           (h + ob_rr_theme->obwidth * 2)) / 2;
 
     y = screen_area->y + (screen_area->height -
                           (h + ob_rr_theme->obwidth * 2)) / 2;
 
-    /* get the dimensions of the target hilite texture */
-    rgbax = ml;
-    rgbay = mt;
-    rgbaw = w - ml - mr;
-    rgbah = h - mt - mb;
-
     if (!p->mapped) {
         /* position the background but don't draw it */
         XMoveResizeWindow(obt_display, p->bg, x, y, w, h);
 
     if (!p->mapped) {
         /* position the background but don't draw it */
         XMoveResizeWindow(obt_display, p->bg, x, y, w, h);
 
-        if (p->mode == OB_FOCUS_CYCLE_POPUP_MODE_ICONS) {
+        if (mode == OB_FOCUS_CYCLE_POPUP_MODE_ICONS) {
             /* position the text */
             XMoveResizeWindow(obt_display, p->icon_mode_text,
                               icon_mode_textx, icon_mode_texty, textw, texth);
             /* position the text */
             XMoveResizeWindow(obt_display, p->icon_mode_text,
                               icon_mode_textx, icon_mode_texty, textw, texth);
@@ -523,7 +517,7 @@ static void popup_render(ObFocusCyclePopup *p, const ObClient *c)
         RrPaint(p->a_bg, p->bg, w, h);
 
     /* draw the scroll arrows */
         RrPaint(p->a_bg, p->bg, w, h);
 
     /* draw the scroll arrows */
-    if (!p->mapped && p->mode == OB_FOCUS_CYCLE_POPUP_MODE_LIST) {
+    if (!p->mapped && mode == OB_FOCUS_CYCLE_POPUP_MODE_LIST) {
         p->a_arrow->texture[0].data.mask.mask =
             ob_rr_theme->up_arrow_mask;
         p->a_arrow->surface.parent = p->a_bg;
         p->a_arrow->texture[0].data.mask.mask =
             ob_rr_theme->up_arrow_mask;
         p->a_arrow->surface.parent = p->a_bg;
@@ -576,7 +570,7 @@ static void popup_render(ObFocusCyclePopup *p, const ObClient *c)
                               iconx, icony, HILITE_SIZE, HILITE_SIZE);
 
             /* position the text */
                               iconx, icony, HILITE_SIZE, HILITE_SIZE);
 
             /* position the text */
-            if (p->mode == OB_FOCUS_CYCLE_POPUP_MODE_LIST)
+            if (mode == OB_FOCUS_CYCLE_POPUP_MODE_LIST)
                 XMoveResizeWindow(obt_display, target->textwin,
                                   list_mode_textx, list_mode_texty,
                                   textw, texth);
                 XMoveResizeWindow(obt_display, target->textwin,
                                   list_mode_textx, list_mode_texty,
                                   textw, texth);
@@ -584,13 +578,13 @@ static void popup_render(ObFocusCyclePopup *p, const ObClient *c)
             /* show/hide the right windows */
             if (row >= 0 && row < icon_rows) {
                 XMapWindow(obt_display, target->iconwin);
             /* show/hide the right windows */
             if (row >= 0 && row < icon_rows) {
                 XMapWindow(obt_display, target->iconwin);
-                if (p->mode == OB_FOCUS_CYCLE_POPUP_MODE_LIST)
+                if (mode == OB_FOCUS_CYCLE_POPUP_MODE_LIST)
                     XMapWindow(obt_display, target->textwin);
                 else
                     XUnmapWindow(obt_display, target->textwin);
             } else {
                 XUnmapWindow(obt_display, target->textwin);
                     XMapWindow(obt_display, target->textwin);
                 else
                     XUnmapWindow(obt_display, target->textwin);
             } else {
                 XUnmapWindow(obt_display, target->textwin);
-                if (p->mode == OB_FOCUS_CYCLE_POPUP_MODE_LIST)
+                if (mode == OB_FOCUS_CYCLE_POPUP_MODE_LIST)
                     XUnmapWindow(obt_display, target->iconwin);
                 else
                     XMapWindow(obt_display, target->iconwin);
                     XUnmapWindow(obt_display, target->iconwin);
                 else
                     XMapWindow(obt_display, target->iconwin);
@@ -615,19 +609,19 @@ static void popup_render(ObFocusCyclePopup *p, const ObClient *c)
             RrPaint(p->a_icon, target->iconwin, HILITE_SIZE, HILITE_SIZE);
 
             /* draw the text */
             RrPaint(p->a_icon, target->iconwin, HILITE_SIZE, HILITE_SIZE);
 
             /* draw the text */
-            if (p->mode == OB_FOCUS_CYCLE_POPUP_MODE_LIST ||
+            if (mode == OB_FOCUS_CYCLE_POPUP_MODE_LIST ||
                 target == newtarget)
             {
                 text = (target == newtarget) ? p->a_hilite_text : p->a_text;
                 text->texture[0].data.text.string = target->text;
                 text->surface.parentx =
                 target == newtarget)
             {
                 text = (target == newtarget) ? p->a_hilite_text : p->a_text;
                 text->texture[0].data.text.string = target->text;
                 text->surface.parentx =
-                    p->mode == OB_FOCUS_CYCLE_POPUP_MODE_ICONS ?
+                    mode == OB_FOCUS_CYCLE_POPUP_MODE_ICONS ?
                     icon_mode_textx : list_mode_textx;
                 text->surface.parenty =
                     icon_mode_textx : list_mode_textx;
                 text->surface.parenty =
-                    p->mode == OB_FOCUS_CYCLE_POPUP_MODE_ICONS ?
+                    mode == OB_FOCUS_CYCLE_POPUP_MODE_ICONS ?
                     icon_mode_texty : list_mode_texty;
                 RrPaint(text,
                     icon_mode_texty : list_mode_texty;
                 RrPaint(text,
-                        (p->mode == OB_FOCUS_CYCLE_POPUP_MODE_ICONS ?
+                        (mode == OB_FOCUS_CYCLE_POPUP_MODE_ICONS ?
                          p->icon_mode_text : target->textwin),
                         textw, texth);
             }
                          p->icon_mode_text : target->textwin),
                         textw, texth);
             }
index 1e767e9..1dbc6d4 100644 (file)
@@ -396,7 +396,7 @@ static void menu_entry_frame_render(ObMenuEntryFrame *self)
                   ob_rr_theme->a_menu_text_normal);
         sub = self->entry->data.submenu.submenu;
         text_a->texture[0].data.text.string = sub ? sub->title : "";
                   ob_rr_theme->a_menu_text_normal);
         sub = self->entry->data.submenu.submenu;
         text_a->texture[0].data.text.string = sub ? sub->title : "";
-        if (sub->shortcut && (self->frame->menu->show_all_shortcuts ||
+        if (sub && sub->shortcut && (self->frame->menu->show_all_shortcuts ||
                               sub->shortcut_always_show ||
                               sub->shortcut_position > 0))
         {
                               sub->shortcut_always_show ||
                               sub->shortcut_position > 0))
         {
@@ -414,6 +414,8 @@ static void menu_entry_frame_render(ObMenuEntryFrame *self)
         else
             text_a = ob_rr_theme->a_menu_text_normal;
         break;
         else
             text_a = ob_rr_theme->a_menu_text_normal;
         break;
+    default:
+        g_assert_not_reached();
     }
 
     switch (self->entry->type) {
     }
 
     switch (self->entry->type) {
@@ -482,6 +484,8 @@ static void menu_entry_frame_render(ObMenuEntryFrame *self)
                     2*ob_rr_theme->menu_sep_paddingy);
         }
         break;
                     2*ob_rr_theme->menu_sep_paddingy);
         }
         break;
+    default:
+        g_assert_not_reached();
     }
 
     if (self->entry->type == OB_MENU_ENTRY_TYPE_NORMAL &&
     }
 
     if (self->entry->type == OB_MENU_ENTRY_TYPE_NORMAL &&
@@ -750,6 +754,8 @@ void menu_frame_render(ObMenuFrame *self)
                     2*ob_rr_theme->menu_sep_paddingy - 2*PADDING;
             }
             break;
                     2*ob_rr_theme->menu_sep_paddingy - 2*PADDING;
             }
             break;
+        default:
+            g_assert_not_reached();
         }
         tw += 2*PADDING;
         th += 2*PADDING;
         }
         tw += 2*PADDING;
         th += 2*PADDING;
index e748cd3..d89c31c 100644 (file)
@@ -662,7 +662,7 @@ static void move_with_keys(gint keycode, gint state)
 static void resize_with_keys(gint keycode, gint state)
 {
     gint dw = 0, dh = 0, pdx = 0, pdy = 0, opx, opy, px, py;
 static void resize_with_keys(gint keycode, gint state)
 {
     gint dw = 0, dh = 0, pdx = 0, pdy = 0, opx, opy, px, py;
-    gint dist = 0, resist = 0;
+    gint resist = 0;
     ObDirection dir;
 
     /* pick the edge if it needs to move */
     ObDirection dir;
 
     /* pick the edge if it needs to move */
@@ -674,8 +674,7 @@ static void resize_with_keys(gint keycode, gint state)
             key_resize_edge = OB_DIRECTION_EAST;
             return;
         }
             key_resize_edge = OB_DIRECTION_EAST;
             return;
         }
-    }
-    if (keycode == ob_keycode(OB_KEY_LEFT)) {
+    } else if (keycode == ob_keycode(OB_KEY_LEFT)) {
         dir = OB_DIRECTION_WEST;
         if (key_resize_edge != OB_DIRECTION_WEST &&
             key_resize_edge != OB_DIRECTION_EAST)
         dir = OB_DIRECTION_WEST;
         if (key_resize_edge != OB_DIRECTION_WEST &&
             key_resize_edge != OB_DIRECTION_EAST)
@@ -683,8 +682,7 @@ static void resize_with_keys(gint keycode, gint state)
             key_resize_edge = OB_DIRECTION_WEST;
             return;
         }
             key_resize_edge = OB_DIRECTION_WEST;
             return;
         }
-    }
-    if (keycode == ob_keycode(OB_KEY_UP)) {
+    } else if (keycode == ob_keycode(OB_KEY_UP)) {
         dir = OB_DIRECTION_NORTH;
         if (key_resize_edge != OB_DIRECTION_NORTH &&
             key_resize_edge != OB_DIRECTION_SOUTH)
         dir = OB_DIRECTION_NORTH;
         if (key_resize_edge != OB_DIRECTION_NORTH &&
             key_resize_edge != OB_DIRECTION_SOUTH)
@@ -692,8 +690,7 @@ static void resize_with_keys(gint keycode, gint state)
             key_resize_edge = OB_DIRECTION_NORTH;
             return;
         }
             key_resize_edge = OB_DIRECTION_NORTH;
             return;
         }
-    }
-    if (keycode == ob_keycode(OB_KEY_DOWN)) {
+    } else /* if (keycode == ob_keycode(OB_KEY_DOWN)) */ {
         dir = OB_DIRECTION_SOUTH;
         if (key_resize_edge != OB_DIRECTION_NORTH &&
             key_resize_edge != OB_DIRECTION_SOUTH)
         dir = OB_DIRECTION_SOUTH;
         if (key_resize_edge != OB_DIRECTION_NORTH &&
             key_resize_edge != OB_DIRECTION_SOUTH)
@@ -756,27 +753,27 @@ static void resize_with_keys(gint keycode, gint state)
 
         if (key_resize_edge == OB_DIRECTION_WEST) {
             if (dir == OB_DIRECTION_WEST)
 
         if (key_resize_edge == OB_DIRECTION_WEST) {
             if (dir == OB_DIRECTION_WEST)
-                dw = (dist = distw);
+                dw = distw;
             else
             else
-                dw = -(dist = distw);
+                dw = -distw;
         }
         else if (key_resize_edge == OB_DIRECTION_EAST) {
             if (dir == OB_DIRECTION_EAST)
         }
         else if (key_resize_edge == OB_DIRECTION_EAST) {
             if (dir == OB_DIRECTION_EAST)
-                dw = (dist = distw);
+                dw = distw;
             else
             else
-                dw = -(dist = distw);
+                dw = -distw;
         }
         else if (key_resize_edge == OB_DIRECTION_NORTH) {
             if (dir == OB_DIRECTION_NORTH)
         }
         else if (key_resize_edge == OB_DIRECTION_NORTH) {
             if (dir == OB_DIRECTION_NORTH)
-                dh = (dist = disth);
+                dh = disth;
             else
             else
-                dh = -(dist = disth);
+                dh = -disth;
         }
         else /*if (key_resize_edge == OB_DIRECTION_SOUTH)*/ {
             if (dir == OB_DIRECTION_SOUTH)
         }
         else /*if (key_resize_edge == OB_DIRECTION_SOUTH)*/ {
             if (dir == OB_DIRECTION_SOUTH)
-                dh = (dist = disth);
+                dh = disth;
             else
             else
-                dh = -(dist = disth);
+                dh = -disth;
         }
     }
 
         }
     }
 
index e71465a..dd8ba12 100644 (file)
@@ -664,7 +664,7 @@ static Cursor load_cursor(const gchar *name, guint fontval)
 
 void ob_exit_with_error(const gchar *msg)
 {
 
 void ob_exit_with_error(const gchar *msg)
 {
-    g_message(msg);
+    g_message("%s", msg);
     session_shutdown(TRUE);
     exit(EXIT_FAILURE);
 }
     session_shutdown(TRUE);
     exit(EXIT_FAILURE);
 }
index 2a938c5..b2e9c4c 100644 (file)
@@ -58,7 +58,7 @@ void ob_exit_replace(void);
 
 void ob_reconfigure(void);
 
 
 void ob_reconfigure(void);
 
-void ob_exit_with_error(const gchar *msg);
+void ob_exit_with_error(const gchar *msg) G_GNUC_NORETURN;
 
 Cursor ob_cursor(ObCursor cursor);
 
 
 Cursor ob_cursor(ObCursor cursor);
 
index bddf137..af1c511 100644 (file)
@@ -157,11 +157,12 @@ void popup_delay_show(ObPopup *self, gulong usec, gchar *text)
     gint textx, texty, textw, texth;
     gint iconx, icony, iconw, iconh;
     Rect *area, mon;
     gint textx, texty, textw, texth;
     gint iconx, icony, iconw, iconh;
     Rect *area, mon;
+    gboolean hasicon = self->hasicon;
 
     /* when there is no icon and the text is not parent relative, then
        fill the whole dialog with the text appearance, don't use the bg at all
     */
 
     /* when there is no icon and the text is not parent relative, then
        fill the whole dialog with the text appearance, don't use the bg at all
     */
-    if (self->hasicon || self->a_text->surface.grad == RR_SURFACE_PARENTREL)
+    if (hasicon || self->a_text->surface.grad == RR_SURFACE_PARENTREL)
         RrMargins(self->a_bg, &l, &t, &r, &b);
     else
         l = t = r = b = 0;
         RrMargins(self->a_bg, &l, &t, &r, &b);
     else
         l = t = r = b = 0;
@@ -189,7 +190,7 @@ void popup_delay_show(ObPopup *self, gulong usec, gchar *text)
     iconx = textx = l + ob_rr_theme->paddingx;
 
     emptyx = l + r + ob_rr_theme->paddingx * 2;
     iconx = textx = l + ob_rr_theme->paddingx;
 
     emptyx = l + r + ob_rr_theme->paddingx * 2;
-    if (self->hasicon) {
+    if (hasicon) {
         iconw = texth * self->iconwm;
         iconh = texth * self->iconhm;
         textx += iconw + ob_rr_theme->paddingx;
         iconw = texth * self->iconwm;
         iconh = texth * self->iconhm;
         textx += iconw + ob_rr_theme->paddingx;
@@ -204,7 +205,7 @@ void popup_delay_show(ObPopup *self, gulong usec, gchar *text)
     /* when there is no icon, then fill the whole dialog with the text
        appearance
     */
     /* when there is no icon, then fill the whole dialog with the text
        appearance
     */
-    if (!self->hasicon)
+    if (!hasicon)
     {
         textx = texty = 0;
         texth += emptyy;
     {
         textx = texty = 0;
         texth += emptyy;
@@ -276,7 +277,7 @@ void popup_delay_show(ObPopup *self, gulong usec, gchar *text)
     /* when there is no icon and the text is not parent relative, then
        fill the whole dialog with the text appearance, don't use the bg at all
     */
     /* when there is no icon and the text is not parent relative, then
        fill the whole dialog with the text appearance, don't use the bg at all
     */
-    if (self->hasicon || self->a_text->surface.grad == RR_SURFACE_PARENTREL)
+    if (hasicon || self->a_text->surface.grad == RR_SURFACE_PARENTREL)
         RrPaint(self->a_bg, self->bg, w, h);
 
     if (textw) {
         RrPaint(self->a_bg, self->bg, w, h);
 
     if (textw) {
@@ -287,7 +288,7 @@ void popup_delay_show(ObPopup *self, gulong usec, gchar *text)
         RrPaint(self->a_text, self->text, textw, texth);
     }
 
         RrPaint(self->a_text, self->text, textw, texth);
     }
 
-    if (self->hasicon)
+    if (hasicon)
         self->draw_icon(iconx, icony, iconw, iconh, self->draw_icon_data);
 
     /* do the actual showing */
         self->draw_icon(iconx, icony, iconw, iconh, self->draw_icon_data);
 
     /* do the actual showing */
index 52223f1..5151100 100644 (file)
@@ -95,7 +95,7 @@ void prompt_startup(gboolean reconfig)
     prompt_a_button->texture[0].data.text.color = c_button;
     prompt_a_focus->texture[0].data.text.color = c_focus;
     prompt_a_press->texture[0].data.text.color = c_press;
     prompt_a_button->texture[0].data.text.color = c_button;
     prompt_a_focus->texture[0].data.text.color = c_focus;
     prompt_a_press->texture[0].data.text.color = c_press;
-    prompt_a_pfocus->texture[0].data.text.color = c_press;
+    prompt_a_pfocus->texture[0].data.text.color = c_pfocus;
 
     prompt_a_focus->texture[1].data.lineart.color = c_focus;
     prompt_a_focus->texture[2].data.lineart.color = c_focus;
 
     prompt_a_focus->texture[1].data.lineart.color = c_focus;
     prompt_a_focus->texture[2].data.lineart.color = c_focus;
index 3bcb95f..dc5e343 100644 (file)
@@ -328,7 +328,6 @@ void resist_size_monitors(ObClient *c, gint resist, gint *w, gint *h,
     Rect *area, *parea;
     gint al, at, ar, ab; /* screen boundaries */
     gint pl, pt, pr, pb; /* physical screen boundaries */
     Rect *area, *parea;
     gint al, at, ar, ab; /* screen boundaries */
     gint pl, pt, pr, pb; /* physical screen boundaries */
-    gint incw, inch;
     guint i;
     Rect desired_area;
 
     guint i;
     Rect desired_area;
 
@@ -339,9 +338,6 @@ void resist_size_monitors(ObClient *c, gint resist, gint *w, gint *h,
     t = RECT_TOP(c->frame->area);
     b = RECT_BOTTOM(c->frame->area);
 
     t = RECT_TOP(c->frame->area);
     b = RECT_BOTTOM(c->frame->area);
 
-    incw = c->size_inc.width;
-    inch = c->size_inc.height;
-
     RECT_SET(desired_area, c->area.x, c->area.y, *w, *h);
 
     for (i = 0; i < screen_num_monitors; ++i) {
     RECT_SET(desired_area, c->area.x, c->area.y, *w, *h);
 
     for (i = 0; i < screen_num_monitors; ++i) {
index 09d5003..6aecaa0 100644 (file)
@@ -505,7 +505,6 @@ void screen_resize(void)
 
 void screen_set_num_desktops(guint num)
 {
 
 void screen_set_num_desktops(guint num)
 {
-    guint old;
     gulong *viewport;
     GList *it, *stacking_copy;
 
     gulong *viewport;
     GList *it, *stacking_copy;
 
@@ -513,7 +512,6 @@ void screen_set_num_desktops(guint num)
 
     if (screen_num_desktops == num) return;
 
 
     if (screen_num_desktops == num) return;
 
-    old = screen_num_desktops;
     screen_num_desktops = num;
     OBT_PROP_SET32(obt_root(ob_screen), NET_NUMBER_OF_DESKTOPS, CARDINAL, num);
 
     screen_num_desktops = num;
     OBT_PROP_SET32(obt_root(ob_screen), NET_NUMBER_OF_DESKTOPS, CARDINAL, num);
 
@@ -1582,7 +1580,7 @@ Rect* screen_area(guint desktop, guint head, Rect *search)
 {
     Rect *a;
     GSList *it;
 {
     Rect *a;
     GSList *it;
-    gint l, r, t, b, al, ar, at, ab;
+    gint l, r, t, b;
     guint i, d;
     gboolean us = search != NULL; /* user provided search */
 
     guint i, d;
     gboolean us = search != NULL; /* user provided search */
 
@@ -1608,30 +1606,30 @@ Rect* screen_area(guint desktop, guint head, Rect *search)
 
     /* only include monitors which the search area lines up with */
     if (RECT_INTERSECTS_RECT(monitor_area[screen_num_monitors], *search)) {
 
     /* only include monitors which the search area lines up with */
     if (RECT_INTERSECTS_RECT(monitor_area[screen_num_monitors], *search)) {
-        al = l = RECT_RIGHT(monitor_area[screen_num_monitors]);
-        at = t = RECT_BOTTOM(monitor_area[screen_num_monitors]);
-        ar = r = RECT_LEFT(monitor_area[screen_num_monitors]);
-        ab = b = RECT_TOP(monitor_area[screen_num_monitors]);
+        l = RECT_RIGHT(monitor_area[screen_num_monitors]);
+        t = RECT_BOTTOM(monitor_area[screen_num_monitors]);
+        r = RECT_LEFT(monitor_area[screen_num_monitors]);
+        b = RECT_TOP(monitor_area[screen_num_monitors]);
         for (i = 0; i < screen_num_monitors; ++i) {
             /* add the monitor if applicable */
             if (RANGES_INTERSECT(search->x, search->width,
                                  monitor_area[i].x, monitor_area[i].width))
             {
         for (i = 0; i < screen_num_monitors; ++i) {
             /* add the monitor if applicable */
             if (RANGES_INTERSECT(search->x, search->width,
                                  monitor_area[i].x, monitor_area[i].width))
             {
-                at = t = MIN(t, RECT_TOP(monitor_area[i]));
-                ab = b = MAX(b, RECT_BOTTOM(monitor_area[i]));
+                t = MIN(t, RECT_TOP(monitor_area[i]));
+                b = MAX(b, RECT_BOTTOM(monitor_area[i]));
             }
             if (RANGES_INTERSECT(search->y, search->height,
                                  monitor_area[i].y, monitor_area[i].height))
             {
             }
             if (RANGES_INTERSECT(search->y, search->height,
                                  monitor_area[i].y, monitor_area[i].height))
             {
-                al = l = MIN(l, RECT_LEFT(monitor_area[i]));
-                ar = r = MAX(r, RECT_RIGHT(monitor_area[i]));
+                l = MIN(l, RECT_LEFT(monitor_area[i]));
+                r = MAX(r, RECT_RIGHT(monitor_area[i]));
             }
         }
     } else {
             }
         }
     } else {
-        al = l = RECT_LEFT(monitor_area[screen_num_monitors]);
-        at = t = RECT_TOP(monitor_area[screen_num_monitors]);
-        ar = r = RECT_RIGHT(monitor_area[screen_num_monitors]);
-        ab = b = RECT_BOTTOM(monitor_area[screen_num_monitors]);
+        l = RECT_LEFT(monitor_area[screen_num_monitors]);
+        t = RECT_TOP(monitor_area[screen_num_monitors]);
+        r = RECT_RIGHT(monitor_area[screen_num_monitors]);
+        b = RECT_BOTTOM(monitor_area[screen_num_monitors]);
     }
 
     for (d = 0; d < screen_num_desktops; ++d) {
     }
 
     for (d = 0; d < screen_num_desktops; ++d) {
index 3c05df4..2a34f71 100644 (file)
@@ -69,6 +69,8 @@ static void do_restack(GList *wins, GList *before)
 
 #ifdef DEBUG
     GList *next;
 
 #ifdef DEBUG
     GList *next;
+
+    g_assert(wins);
     /* pls only restack stuff in the same layer at a time */
     for (it = wins; it; it = next) {
         next = g_list_next(it);
     /* pls only restack stuff in the same layer at a time */
     for (it = wins; it; it = next) {
         next = g_list_next(it);
index 583c9f7..cde0d03 100644 (file)
@@ -217,7 +217,7 @@ static inline int font_calculate_baseline(RrFont *f, gint height)
 
 void RrFontDraw(XftDraw *d, RrTextureText *t, RrRect *area)
 {
 
 void RrFontDraw(XftDraw *d, RrTextureText *t, RrRect *area)
 {
-    gint x,y,w,h;
+    gint x,y,w;
     XftColor c;
     gint mw;
     PangoRectangle rect;
     XftColor c;
     gint mw;
     PangoRectangle rect;
@@ -240,7 +240,7 @@ void RrFontDraw(XftDraw *d, RrTextureText *t, RrRect *area)
     w = area->width;
     if (t->flow) w = MAX(w, t->maxwidth);
     w -= 4;
     w = area->width;
     if (t->flow) w = MAX(w, t->maxwidth);
     w -= 4;
-    h = area->height;
+    /* h = area->height; */
 
     if (t->flow)
         ell = PANGO_ELLIPSIZE_NONE;
 
     if (t->flow)
         ell = PANGO_ELLIPSIZE_NONE;
@@ -258,6 +258,8 @@ void RrFontDraw(XftDraw *d, RrTextureText *t, RrRect *area)
         case RR_ELLIPSIZE_END:
             ell = PANGO_ELLIPSIZE_END;
             break;
         case RR_ELLIPSIZE_END:
             ell = PANGO_ELLIPSIZE_END;
             break;
+        default:
+            g_assert_not_reached();
         }
     }
 
         }
     }