diff options
author | Bram Moolenaar <Bram@vim.org> | 2020-12-13 12:25:35 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2020-12-13 12:25:35 +0100 |
commit | c530852315517a44354edbbd6c3375355bbec37e (patch) | |
tree | e2595fe0da14d607e3ec811a23f8b91f1dfb848b | |
parent | 93f82cbee515e13b564f51ddcd5e3d6694358ba4 (diff) | |
download | vim-git-c530852315517a44354edbbd6c3375355bbec37e.tar.gz |
patch 8.2.2136: Vim9: Using uninitialized variablev8.2.2136
Problem: Vim9: Using uninitialized variable.
Solution: Initialize "len" to zero. Clean up fnamemodify().
-rw-r--r-- | src/filepath.c | 9 | ||||
-rw-r--r-- | src/version.c | 2 |
2 files changed, 7 insertions, 4 deletions
diff --git a/src/filepath.c b/src/filepath.c index 347612a80..0db0dcfb1 100644 --- a/src/filepath.c +++ b/src/filepath.c @@ -1019,7 +1019,7 @@ f_fnamemodify(typval_T *argvars, typval_T *rettv) char_u *fname; char_u *mods; int usedlen = 0; - int len; + int len = 0; char_u *fbuf = NULL; char_u buf[NUMBUFLEN]; @@ -1028,12 +1028,13 @@ f_fnamemodify(typval_T *argvars, typval_T *rettv) return; fname = tv_get_string_chk(&argvars[0]); mods = tv_get_string_buf_chk(&argvars[1], buf); - if (fname == NULL) + if (mods == NULL || fname == NULL) fname = NULL; - else if (mods != NULL && *mods != NUL) + else { len = (int)STRLEN(fname); - (void)modify_fname(mods, FALSE, &usedlen, &fname, &fbuf, &len); + if (mods != NULL && *mods != NUL) + (void)modify_fname(mods, FALSE, &usedlen, &fname, &fbuf, &len); } rettv->v_type = VAR_STRING; diff --git a/src/version.c b/src/version.c index 7f78742ac..0cb1d9297 100644 --- a/src/version.c +++ b/src/version.c @@ -751,6 +751,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 2136, +/**/ 2135, /**/ 2134, |