diff options
Diffstat (limited to 'src/nvim/cursor_shape.c')
| -rw-r--r-- | src/nvim/cursor_shape.c | 9 | 
1 files changed, 6 insertions, 3 deletions
diff --git a/src/nvim/cursor_shape.c b/src/nvim/cursor_shape.c index 97fc3a3ca3..b45e7002f7 100644 --- a/src/nvim/cursor_shape.c +++ b/src/nvim/cursor_shape.c @@ -102,11 +102,14 @@ char_u *parse_shape_opt(int what)      }      while (*modep != NUL) {        colonp = vim_strchr(modep, ':'); -      if (colonp == NULL) +      commap = vim_strchr(modep, ','); + +      if (colonp == NULL || (commap != NULL && commap < colonp)) {          return (char_u *)N_("E545: Missing colon"); -      if (colonp == modep) +      } +      if (colonp == modep) {          return (char_u *)N_("E546: Illegal mode"); -      commap = vim_strchr(modep, ','); +      }        // Repeat for all modes before the colon.        // For the 'a' mode, we loop to handle all the modes.  | 
