=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/tmux/screen-write.c,v retrieving revision 1.87 retrieving revision 1.88 diff -u -r1.87 -r1.88 --- src/usr.bin/tmux/screen-write.c 2016/05/27 23:02:17 1.87 +++ src/usr.bin/tmux/screen-write.c 2016/05/27 23:06:12 1.88 @@ -1,4 +1,4 @@ -/* $OpenBSD: screen-write.c,v 1.87 2016/05/27 23:02:17 nicm Exp $ */ +/* $OpenBSD: screen-write.c,v 1.88 2016/05/27 23:06:12 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott @@ -32,6 +32,10 @@ static int screen_write_combine(struct screen_write_ctx *, const struct utf8_data *); +static const struct grid_cell screen_write_pad_cell = { + GRID_FLAG_PADDING, 0, { .fg = 8 }, { .bg = 8 }, { { 0 }, 0, 0, 0 } +}; + /* Initialise writing with a window. */ void screen_write_start(struct screen_write_ctx *ctx, struct window_pane *wp, @@ -972,11 +976,8 @@ * If the new character is UTF-8 wide, fill in padding cells. Have * already ensured there is enough room. */ - memcpy(&tmp_gc, &grid_default_cell, sizeof tmp_gc); - tmp_gc.flags |= GRID_FLAG_PADDING; - tmp_gc.data.width = 0; for (xx = s->cx + 1; xx < s->cx + width; xx++) - grid_view_set_cell(gd, xx, s->cy, &tmp_gc); + grid_view_set_cell(gd, xx, s->cy, &screen_write_pad_cell); /* Set the cell. */ grid_view_set_cell(gd, s->cx, s->cy, gc);