diff options
Diffstat (limited to 'screen.c')
-rw-r--r-- | screen.c | 10 |
1 files changed, 10 insertions, 0 deletions
@@ -85,6 +85,8 @@ screen_init(struct screen *s, u_int sx, u_int sy, u_int hlimit) s->tabs = NULL; s->sel = NULL; + s->write_list = NULL; + screen_reinit(s); } @@ -122,6 +124,9 @@ screen_free(struct screen *s) free(s->title); free(s->ccolour); + if (s->write_list != NULL) + screen_write_free_list(s); + if (s->saved_grid != NULL) grid_destroy(s->saved_grid); grid_destroy(s->grid); @@ -222,6 +227,11 @@ screen_resize_cursor(struct screen *s, u_int sx, u_int sy, int reflow, { u_int tcx, tcy; + if (s->write_list != NULL) { + screen_write_free_list(s); + s->write_list = NULL; + } + if (cx == NULL) cx = &tcx; *cx = s->cx; |