diff options
author | Justin M. Keyes <justinkz@gmail.com> | 2018-04-27 09:25:02 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-04-27 09:25:02 +0200 |
commit | 53f11dcfc7139fe6c8a6b114db4bfec5d91005a9 (patch) | |
tree | e9bfbaf10fc6681bbbcba0a0eabdce8a6f6840b5 /src/nvim/spell.c | |
parent | 009ccfe170ada2c78ca7feabda567a7e901fb30b (diff) | |
parent | 4ce8521ee4a72e050bd187c2986708c5f98c7442 (diff) | |
download | rneovim-53f11dcfc7139fe6c8a6b114db4bfec5d91005a9.tar.gz rneovim-53f11dcfc7139fe6c8a6b114db4bfec5d91005a9.tar.bz2 rneovim-53f11dcfc7139fe6c8a6b114db4bfec5d91005a9.zip |
Merge #8218 'Fix errors reported by PVS'
closes #4983
Diffstat (limited to 'src/nvim/spell.c')
-rw-r--r-- | src/nvim/spell.c | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/src/nvim/spell.c b/src/nvim/spell.c index 34eb2fdf1b..84aeeda2bf 100644 --- a/src/nvim/spell.c +++ b/src/nvim/spell.c @@ -7368,16 +7368,24 @@ static void dump_word(slang_T *slang, char_u *word, char_u *pat, int *dir, int d if ((flags & (WF_BANNED | WF_RARE | WF_REGION)) || keepcap) { STRCPY(badword, p); STRCAT(badword, "/"); - if (keepcap) + if (keepcap) { STRCAT(badword, "="); - if (flags & WF_BANNED) + } + if (flags & WF_BANNED) { STRCAT(badword, "!"); - else if (flags & WF_RARE) + } else if (flags & WF_RARE) { STRCAT(badword, "?"); - if (flags & WF_REGION) - for (i = 0; i < 7; ++i) - if (flags & (0x10000 << i)) - sprintf((char *)badword + STRLEN(badword), "%d", i + 1); + } + if (flags & WF_REGION) { + for (i = 0; i < 7; i++) { + if (flags & (0x10000 << i)) { + const size_t badword_len = STRLEN(badword); + snprintf((char *)badword + badword_len, + sizeof(badword) - badword_len, + "%d", i + 1); + } + } + } p = badword; } |