Mercurial > vim
changeset 29058:eee580a4c402 v8.2.5051
patch 8.2.5051: check for autocmd_add() event argument is confusing
Commit: https://github.com/vim/vim/commit/882476ad7b4944a8386993e94b7e31139a314f91
Author: Bram Moolenaar <Bram@vim.org>
Date: Wed Jun 1 16:02:38 2022 +0100
patch 8.2.5051: check for autocmd_add() event argument is confusing
Problem: Check for autocmd_add() event argument is confusing.
Solution: Make the code more straightforward.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Wed, 01 Jun 2022 17:15:03 +0200 |
parents | 802f18a85cb5 |
children | cc8b6c130dff |
files | src/autocmd.c src/version.c |
diffstat | 2 files changed, 8 insertions(+), 8 deletions(-) [+] |
line wrap: on
line diff
--- a/src/autocmd.c +++ b/src/autocmd.c @@ -2951,26 +2951,24 @@ autocmd_add_or_delete(typval_T *argvars, if (eli == NULL) break; if (eli->li_tv.v_type != VAR_STRING - || eli->li_tv.vval.v_string == NULL) + || (p = eli->li_tv.vval.v_string) == NULL) { emsg(_(e_string_required)); - continue; + break; } - p = eli->li_tv.vval.v_string; } else { - if (end == NULL) - p = end = event_name; - if (end == NULL || *end == NUL) + if (p == NULL) + p = event_name; + if (p == NULL || *p == NUL) break; } - if (p == NULL) - continue; event = event_name2nr(p, &end); if (event == NUM_EVENTS || *end != NUL) { + // this also catches something following a valid event name semsg(_(e_no_such_event_str), p); retval = VVAL_FALSE; break;