diff options
author | nicm <nicm> | 2019-03-18 21:55:04 +0000 |
---|---|---|
committer | nicm <nicm> | 2019-03-18 21:55:04 +0000 |
commit | 0406ec0ec29f6dd7b8ea663f50d766bce5904c78 (patch) | |
tree | aa0b5e2050cc60c463f39597f914ebfe3d6147b2 /format-draw.c | |
parent | f34ebfed7698ce41fe7bae756c0bb0c485e8bfdb (diff) | |
download | rtmux-0406ec0ec29f6dd7b8ea663f50d766bce5904c78.tar.gz rtmux-0406ec0ec29f6dd7b8ea663f50d766bce5904c78.tar.bz2 rtmux-0406ec0ec29f6dd7b8ea663f50d766bce5904c78.zip |
Free temporary screens when writing format.
Diffstat (limited to 'format-draw.c')
-rw-r--r-- | format-draw.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/format-draw.c b/format-draw.c index 52292c98..a3bd4351 100644 --- a/format-draw.c +++ b/format-draw.c @@ -694,8 +694,10 @@ format_draw(struct screen_write_ctx *octx, const struct grid_cell *base, } free(fr); - for (i = 0; i < TOTAL; i++) + for (i = 0; i < TOTAL; i++) { + screen_write_stop(&ctx[i]); log_debug("%s: width %s is %u", __func__, names[i], width[i]); + } if (focus_start != -1 && focus_end != -1) log_debug("focus is %d-%d", focus_start, focus_end); TAILQ_FOREACH(fr, &frs, entry) { @@ -748,6 +750,10 @@ format_draw(struct screen_write_ctx *octx, const struct grid_cell *base, format_free_range(&frs, fr); } + /* Free the screens. */ + for (i = 0; i < TOTAL; i++) + screen_free(&s[i]); + /* Restore the original cursor position. */ screen_write_cursormove(octx, ocx, ocy, 0); } |