summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorErik S. V. Jansson <caffeineviking@gmail.com>2024-02-26 22:23:05 +0100
committerChristian Brabandt <cb@256bit.org>2024-02-26 22:23:05 +0100
commit2f02638aa8f737786551c92e78ce13def3d098b2 (patch)
tree37a0517c55ebc4cdfa9145ad5cb502b8e254b875
parent02d7a6c6cfceb3faf9c98fcb7c458760cd50d269 (diff)
patch 9.1.0139: MS-Windows: ligatures map cleared on startupv9.1.0139
Problem: MS-Windows: ligatures map cleared on startup Solution: Don't clear the ligatures_map, if the guiligatures option has already been set (Erik S. V. Jansson) If guiligatures is set from a .vimrc it's possible that it will be cleared on start-up (e.g. in Win32 that's what happens). So don't clear the ligatures map if gui_set_ligatures() has already been called (e.g. after setting 'ligatures' from .vimrc) closes: #14094 Signed-off-by: Erik S. V. Jansson <caffeineviking@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
-rw-r--r--src/gui.c6
-rw-r--r--src/optionstr.c2
-rw-r--r--src/version.c2
3 files changed, 8 insertions, 2 deletions
diff --git a/src/gui.c b/src/gui.c
index 78299f0454..1953691021 100644
--- a/src/gui.c
+++ b/src/gui.c
@@ -456,7 +456,11 @@ gui_init_check(void)
gui.prev_wrap = -1;
#if defined(FEAT_GUI_GTK) || defined(FEAT_GUI_MSWIN)
- CLEAR_FIELD(gui.ligatures_map);
+ // Note: gui_set_ligatures() might already have been called e.g. from .vimrc,
+ // and in that case we don't want to overwrite ligatures map that has already
+ // been correctly populated (as that would lead to a cleared ligatures maps).
+ if (*p_guiligatures == NUL)
+ CLEAR_FIELD(gui.ligatures_map);
#endif
#if defined(ALWAYS_USE_GUI) || defined(VIMDLL)
diff --git a/src/optionstr.c b/src/optionstr.c
index 457fccb1eb..7f6225fd2f 100644
--- a/src/optionstr.c
+++ b/src/optionstr.c
@@ -4530,7 +4530,7 @@ did_set_string_option(
|| varp == &p_guifontset // 'guifontset'
# endif
|| varp == &p_guifontwide // 'guifontwide'
-# ifdef FEAT_GUI_GTK
+# if defined(FEAT_GUI_GTK) || defined(FEAT_GUI_MSWIN)
|| varp == &p_guiligatures // 'guiligatures'
# endif
)
diff --git a/src/version.c b/src/version.c
index 8ad03e380c..07d2558e2a 100644
--- a/src/version.c
+++ b/src/version.c
@@ -705,6 +705,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 139,
+/**/
138,
/**/
137,