Mercurial > vim
comparison src/filepath.c @ 23181:5f69af863502 v8.2.2136
patch 8.2.2136: Vim9: Using uninitialized variable
Commit: https://github.com/vim/vim/commit/c530852315517a44354edbbd6c3375355bbec37e
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Dec 13 12:25:35 2020 +0100
patch 8.2.2136: Vim9: Using uninitialized variable
Problem: Vim9: Using uninitialized variable.
Solution: Initialize "len" to zero. Clean up fnamemodify().
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 13 Dec 2020 12:30:04 +0100 |
parents | d7294a6220ac |
children | 7b3317e959e3 |
comparison
equal
deleted
inserted
replaced
23180:0966c0fbf3f5 | 23181:5f69af863502 |
---|---|
1017 f_fnamemodify(typval_T *argvars, typval_T *rettv) | 1017 f_fnamemodify(typval_T *argvars, typval_T *rettv) |
1018 { | 1018 { |
1019 char_u *fname; | 1019 char_u *fname; |
1020 char_u *mods; | 1020 char_u *mods; |
1021 int usedlen = 0; | 1021 int usedlen = 0; |
1022 int len; | 1022 int len = 0; |
1023 char_u *fbuf = NULL; | 1023 char_u *fbuf = NULL; |
1024 char_u buf[NUMBUFLEN]; | 1024 char_u buf[NUMBUFLEN]; |
1025 | 1025 |
1026 if (in_vim9script() && (check_for_string(&argvars[0]) == FAIL | 1026 if (in_vim9script() && (check_for_string(&argvars[0]) == FAIL |
1027 || check_for_string(&argvars[1]) == FAIL)) | 1027 || check_for_string(&argvars[1]) == FAIL)) |
1028 return; | 1028 return; |
1029 fname = tv_get_string_chk(&argvars[0]); | 1029 fname = tv_get_string_chk(&argvars[0]); |
1030 mods = tv_get_string_buf_chk(&argvars[1], buf); | 1030 mods = tv_get_string_buf_chk(&argvars[1], buf); |
1031 if (fname == NULL) | 1031 if (mods == NULL || fname == NULL) |
1032 fname = NULL; | 1032 fname = NULL; |
1033 else if (mods != NULL && *mods != NUL) | 1033 else |
1034 { | 1034 { |
1035 len = (int)STRLEN(fname); | 1035 len = (int)STRLEN(fname); |
1036 (void)modify_fname(mods, FALSE, &usedlen, &fname, &fbuf, &len); | 1036 if (mods != NULL && *mods != NUL) |
1037 (void)modify_fname(mods, FALSE, &usedlen, &fname, &fbuf, &len); | |
1037 } | 1038 } |
1038 | 1039 |
1039 rettv->v_type = VAR_STRING; | 1040 rettv->v_type = VAR_STRING; |
1040 if (fname == NULL) | 1041 if (fname == NULL) |
1041 rettv->vval.v_string = NULL; | 1042 rettv->vval.v_string = NULL; |