diff --git a/grid.c b/grid.c index 2ca4e6c5..c63287bd 100644 --- a/grid.c +++ b/grid.c @@ -481,11 +481,10 @@ void grid_get_cell(struct grid *gd, u_int px, u_int py, struct grid_cell *gc) { if (grid_check_y(gd, __func__, py) != 0 || - px >= gd->linedata[py].cellsize) { + px >= gd->linedata[py].cellsize) memcpy(gc, &grid_default_cell, sizeof *gc); - return; - } - return (grid_get_cell1(&gd->linedata[py], px, gc)); + else + grid_get_cell1(&gd->linedata[py], px, gc); } /* Set cell at relative position. */ diff --git a/window.c b/window.c index 2f1049b2..abe0b333 100644 --- a/window.c +++ b/window.c @@ -1260,16 +1260,17 @@ window_pane_set_mode(struct window_pane *wp, const struct window_mode *mode, if (wme->mode == mode) break; } - if (wme != NULL) + if (wme != NULL) { TAILQ_REMOVE(&wp->modes, wme, entry); - else { + TAILQ_INSERT_HEAD(&wp->modes, wme, entry); + } else { wme = xcalloc(1, sizeof *wme); wme->wp = wp; wme->mode = mode; wme->prefix = 1; + TAILQ_INSERT_HEAD(&wp->modes, wme, entry); wme->screen = wme->mode->init(wme, fs, args); } - TAILQ_INSERT_HEAD(&wp->modes, wme, entry); wp->screen = wme->screen; wp->flags |= (PANE_REDRAW|PANE_CHANGED);