diff options
author | Justin M. Keyes <justinkz@gmail.com> | 2017-05-20 17:07:35 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-05-20 17:07:35 +0200 |
commit | bde46fdeceec8f9dd675f0e31080d732308573d9 (patch) | |
tree | 0044b6fd7f2f1682941e053ea686ec98a1d4f898 /src/nvim/getchar.c | |
parent | 3280765f2dde4ba6d120387908d735ed763db01c (diff) | |
parent | 7dc7d2f83f30eb2df1c5408ffceda244ced2f468 (diff) | |
download | rneovim-bde46fdeceec8f9dd675f0e31080d732308573d9.tar.gz rneovim-bde46fdeceec8f9dd675f0e31080d732308573d9.tar.bz2 rneovim-bde46fdeceec8f9dd675f0e31080d732308573d9.zip |
Merge #6772 from ZyX-I/fix-pvs-errors
Diffstat (limited to 'src/nvim/getchar.c')
-rw-r--r-- | src/nvim/getchar.c | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/src/nvim/getchar.c b/src/nvim/getchar.c index 79b95272de..c3c393f1ec 100644 --- a/src/nvim/getchar.c +++ b/src/nvim/getchar.c @@ -3794,8 +3794,7 @@ makemap ( char *cmd; int abbr; int hash; - int did_cpo = FALSE; - int i; + bool did_cpo = false; validate_maphash(); @@ -3923,13 +3922,15 @@ makemap ( /* When outputting <> form, need to make sure that 'cpo' * is set to the Vim default. */ if (!did_cpo) { - if (*mp->m_str == NUL) /* will use <Nop> */ - did_cpo = TRUE; - else - for (i = 0; i < 2; ++i) - for (p = (i ? mp->m_str : mp->m_keys); *p; ++p) - if (*p == K_SPECIAL || *p == NL) - did_cpo = TRUE; + if (*mp->m_str == NUL) { // Will use <Nop>. + did_cpo = true; + } else { + const char specials[] = { (char)(uint8_t)K_SPECIAL, NL, NUL }; + if (strpbrk((const char *)mp->m_str, specials) != NULL + || strpbrk((const char *)mp->m_keys, specials) != NULL) { + did_cpo = true; + } + } if (did_cpo) { if (fprintf(fd, "let s:cpo_save=&cpo") < 0 || put_eol(fd) < 0 |