changeset 30701:328f91a31951 v9.0.0685

patch 9.0.0685: FORTIFY_SOURCE causes a crash in Vim9 script Commit: https://github.com/vim/vim/commit/07eaa1ede4a39b6a95203beebd94943b62a216c1 Author: Yee Cheng Chin <ychin.git@gmail.com> Date: Fri Oct 7 16:00:04 2022 +0100 patch 9.0.0685: FORTIFY_SOURCE causes a crash in Vim9 script Problem: FORTIFY_SOURCE causes a crash in Vim9 script. Solution: Use a pointer to the first char. (Yee Cheng Chin, closes https://github.com/vim/vim/issues/11302)
author Bram Moolenaar <Bram@vim.org>
date Fri, 07 Oct 2022 17:15:03 +0200
parents 1e8f19b459dd
children 3ffb92bedeb4
files src/version.c src/vim9script.c
diffstat 2 files changed, 6 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/version.c
+++ b/src/version.c
@@ -700,6 +700,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    685,
+/**/
     684,
 /**/
     683,
--- a/src/vim9script.c
+++ b/src/vim9script.c
@@ -140,7 +140,8 @@ ex_vim9script(exarg_T *eap UNUSED)
 					 0L, (char_u *)CPO_VIM, OPT_NO_REDRAW);
     }
 #else
-    // No check for this being the first command, it doesn't matter.
+    // No check for this being the first command, the information is not
+    // available.
     current_sctx.sc_version = SCRIPT_VERSION_VIM9;
 #endif
 }
@@ -969,7 +970,8 @@ update_vim9_script_var(
 		sv->sv_flags |= SVFLAG_ASSIGNED;
 	    newsav->sav_var_vals_idx = si->sn_var_vals.ga_len;
 	    ++si->sn_var_vals.ga_len;
-	    STRCPY(&newsav->sav_key, name);
+	    // a pointer to the first char avoids a FORTIFY_SOURCE problem
+	    STRCPY(&newsav->sav_key[0], name);
 	    sv->sv_name = newsav->sav_key;
 	    newsav->sav_di = di;
 	    newsav->sav_block_id = si->sn_current_block_id;