From dc4f60fd4f8f5d0543a0d1853fbaebc07fcc9a94 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Mon, 10 May 2021 17:56:35 +0200 Subject: [PATCH] =?UTF-8?q?render:=20always=20do=20a=20full=20repaint=20if?= =?UTF-8?q?=20last=20buffer=E2=80=99s=20dimension=20doesn=E2=80=99t=20matc?= =?UTF-8?q?h?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- render.c | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/render.c b/render.c index d9cd1bca..1ba3516a 100644 --- a/render.c +++ b/render.c @@ -2196,6 +2196,8 @@ grid_render(struct terminal *term) dirty_cursor(term); if (term->render.last_buf == NULL || + term->render.last_buf->width != buf->width || + term->render.last_buf->height != buf->height || term->flash.active || term->render.was_flashing || term->is_searching != term->render.was_searching || term->render.margins) @@ -2205,16 +2207,15 @@ grid_render(struct terminal *term) else if (buf->age > 0) { LOG_DBG("buffer age: %u", buf->age); - xassert(term->render.last_buf != buf); - if (term->render.last_buf->width == buf->width && - term->render.last_buf->height == buf->height) - { - gettimeofday(&start_double_buffering, NULL); - reapply_old_damage(term, buf, term->render.last_buf); - gettimeofday(&stop_double_buffering, NULL); - } else - force_full_repaint(term, buf); + xassert(term->render.last_buf != NULL); + xassert(term->render.last_buf != buf); + xassert(term->render.last_buf->width == buf->width); + xassert(term->render.last_buf->height == buf->height); + + gettimeofday(&start_double_buffering, NULL); + reapply_old_damage(term, buf, term->render.last_buf); + gettimeofday(&stop_double_buffering, NULL); } if (term->render.last_buf != NULL) {