From 8927c9b720135610a1193999d29be76927b05ab3 Mon Sep 17 00:00:00 2001 From: h-east Date: Sat, 20 Apr 2024 17:57:19 +0200 Subject: patch 9.1.0358: wrong drawing in GUI with setcellwidth() Problem: wrong drawing in GUI with setcellwidth() (after v9.1.0344) Solution: move gui.in_use condition (h-east) closes: #14600 Signed-off-by: h-east Signed-off-by: Christian Brabandt --- src/screen.c | 25 +++++++++++-------------- src/version.c | 2 ++ 2 files changed, 13 insertions(+), 14 deletions(-) diff --git a/src/screen.c b/src/screen.c index a8b4559b11..35d300213b 100644 --- a/src/screen.c +++ b/src/screen.c @@ -1981,22 +1981,19 @@ screen_char(unsigned off, int row, int col) { char_u buf[MB_MAXBYTES + 1]; - if (get_cellwidth(ScreenLinesUC[off]) > 1) - { - // If the width is set to 2 with `setcellwidths` - + if ( #ifdef FEAT_GUI - if (!gui.in_use) - { -#endif - // Clear the two screen cells. If the character is actually - // single width it won't change the second cell. - out_str((char_u *)" "); - term_windgoto(row, col); - screen_cur_col = 9999; -#ifdef FEAT_GUI - } + !gui.in_use && #endif + get_cellwidth(ScreenLinesUC[off]) > 1 + ) + { + // If the width is set to 2 with setcellwidths() + // clear the two screen cells. If the character is actually + // single width it won't change the second cell. + out_str((char_u *)" "); + term_windgoto(row, col); + screen_cur_col = 9999; } else if (utf_ambiguous_width(ScreenLinesUC[off])) { diff --git a/src/version.c b/src/version.c index 93798aa020..ee34063155 100644 --- a/src/version.c +++ b/src/version.c @@ -704,6 +704,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 358, /**/ 357, /**/ -- cgit v1.2.3