diff options
author | Bram Moolenaar <Bram@vim.org> | 2021-11-25 10:50:12 +0000 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2021-11-25 10:50:12 +0000 |
commit | bd228fd097b41a798f90944b5d1245eddd484142 (patch) | |
tree | ed9a086f58a1ce7dc970be1fc3495fd278dd4936 /src/help.c | |
parent | bb277fd89fd7c665d51be2a08993732d46c208ef (diff) | |
download | vim-git-bd228fd097b41a798f90944b5d1245eddd484142.tar.gz |
patch 8.2.3669: buffer overflow with long help argumentv8.2.3669
Problem: Buffer overflow with long help argument.
Solution: Use snprintf().
Diffstat (limited to 'src/help.c')
-rw-r--r-- | src/help.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/src/help.c b/src/help.c index 28d914c82..d67f78b08 100644 --- a/src/help.c +++ b/src/help.c @@ -422,8 +422,7 @@ find_help_tags( || (vim_strchr((char_u *)"%_z@", arg[1]) != NULL && arg[2] != NUL))) { - STRCPY(d, "/\\\\"); - STRCPY(d + 3, arg + 1); + vim_snprintf((char *)d, IOSIZE, "/\\\\%s", arg + 1); // Check for "/\\_$", should be "/\\_\$" if (d[3] == '_' && d[4] == '$') STRCPY(d + 4, "\\$"); |