diff options
author | Bram Moolenaar <Bram@vim.org> | 2017-06-23 23:00:08 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2017-06-23 23:00:08 +0200 |
commit | 5fe691240bff11e9618252486147f0156e875666 (patch) | |
tree | 021ca9b598e70e6a16401fb626213a64ecc9c46b | |
parent | 090209bfbd41af5d8c8e44f8366d290431ffbf18 (diff) | |
download | vim-git-5fe691240bff11e9618252486147f0156e875666.tar.gz |
patch 8.0.0666: dead for loopv8.0.0666
Problem: Dead for loop. (Coverity)
Solution: Remove the for loop.
-rw-r--r-- | src/term.c | 89 | ||||
-rw-r--r-- | src/version.c | 2 |
2 files changed, 44 insertions, 47 deletions
diff --git a/src/term.c b/src/term.c index f36f093c9..56d698bb2 100644 --- a/src/term.c +++ b/src/term.c @@ -4601,59 +4601,54 @@ check_termcode( || key_name[0] == KS_SGR_MOUSE || key_name[0] == KS_SGR_MOUSE_RELEASE) { - for (;;) - { - /* URXVT 1015 mouse reporting mode: - * Almost identical to xterm mouse mode, except the values - * are decimal instead of bytes. - * - * \033[%d;%d;%dM - * ^-- row - * ^----- column - * ^-------- code - * - * SGR 1006 mouse reporting mode: - * Almost identical to xterm mouse mode, except the values - * are decimal instead of bytes. - * - * \033[<%d;%d;%dM - * ^-- row - * ^----- column - * ^-------- code - * - * \033[<%d;%d;%dm : mouse release event - * ^-- row - * ^----- column - * ^-------- code - */ - p = modifiers_start; - if (p == NULL) - return -1; - - mouse_code = getdigits(&p); - if (*p++ != ';') - return -1; + /* URXVT 1015 mouse reporting mode: + * Almost identical to xterm mouse mode, except the values + * are decimal instead of bytes. + * + * \033[%d;%d;%dM + * ^-- row + * ^----- column + * ^-------- code + * + * SGR 1006 mouse reporting mode: + * Almost identical to xterm mouse mode, except the values + * are decimal instead of bytes. + * + * \033[<%d;%d;%dM + * ^-- row + * ^----- column + * ^-------- code + * + * \033[<%d;%d;%dm : mouse release event + * ^-- row + * ^----- column + * ^-------- code + */ + p = modifiers_start; + if (p == NULL) + return -1; - /* when mouse reporting is SGR, add 32 to mouse code */ - if (key_name[0] == KS_SGR_MOUSE - || key_name[0] == KS_SGR_MOUSE_RELEASE) - mouse_code += 32; + mouse_code = getdigits(&p); + if (*p++ != ';') + return -1; - if (key_name[0] == KS_SGR_MOUSE_RELEASE) - mouse_code |= MOUSE_RELEASE; + /* when mouse reporting is SGR, add 32 to mouse code */ + if (key_name[0] == KS_SGR_MOUSE + || key_name[0] == KS_SGR_MOUSE_RELEASE) + mouse_code += 32; - mouse_col = getdigits(&p) - 1; - if (*p++ != ';') - return -1; + if (key_name[0] == KS_SGR_MOUSE_RELEASE) + mouse_code |= MOUSE_RELEASE; - mouse_row = getdigits(&p) - 1; + mouse_col = getdigits(&p) - 1; + if (*p++ != ';') + return -1; - /* The modifiers were the mouse coordinates, not the - * modifier keys (alt/shift/ctrl/meta) state. */ - modifiers = 0; + mouse_row = getdigits(&p) - 1; - break; - } + /* The modifiers were the mouse coordinates, not the + * modifier keys (alt/shift/ctrl/meta) state. */ + modifiers = 0; } # endif diff --git a/src/version.c b/src/version.c index 8d8d4c8cf..52ed10265 100644 --- a/src/version.c +++ b/src/version.c @@ -765,6 +765,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 666, +/**/ 665, /**/ 664, |