From 31c739458acc397ea3684d4504e6036846f2a708 Mon Sep 17 00:00:00 2001 From: Christian Brabandt Date: Sun, 24 May 2026 16:47:27 +0000 Subject: [PATCH] patch 9.2.0528: possible overflow in XIM resource handling Problem: possible overflow in XIM resource handling (Venukamatchi) Solution: use vim_strncpy() with the buffer size Signed-off-by: Christian Brabandt --- src/gui_xim.c | 6 ++++-- src/version.c | 2 ++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/gui_xim.c b/src/gui_xim.c index ec4620f38b..a04667e2dc 100644 --- a/src/gui_xim.c +++ b/src/gui_xim.c @@ -1750,7 +1750,8 @@ xim_real_init(Window x11_window, Display *x11_display) if (gui.rsrc_input_method != NULL && *gui.rsrc_input_method != NUL) { - strcpy(tmp, gui.rsrc_input_method); + vim_strncpy((char_u *)tmp, (char_u *)gui.rsrc_input_method, + sizeof(tmp) - 1); for (ns = s = tmp; ns != NULL && *s != NUL;) { s = (char *)skipwhite((char_u *)s); @@ -1817,7 +1818,8 @@ xim_real_init(Window x11_window, Display *x11_display) } found = False; - strcpy(tmp, gui.rsrc_preedit_type_name); + vim_strncpy((char_u *)tmp, (char_u *)gui.rsrc_preedit_type_name, + sizeof(tmp) - 1); for (s = tmp; s && !found; ) { while (*s && SAFE_isspace(*s)) diff --git a/src/version.c b/src/version.c index 708cd1746b..19dbebbdb4 100644 --- a/src/version.c +++ b/src/version.c @@ -729,6 +729,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 528, /**/ 527, /**/