Mercurial > vim
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;