diff options
author | Paul Rigge <rigge@berkeley.edu> | 2018-01-01 20:20:57 -0800 |
---|---|---|
committer | Paul Rigge <rigge@berkeley.edu> | 2018-01-02 17:22:33 -0800 |
commit | 65ec4ea62972e021065d5a5be83b04bb8da2561a (patch) | |
tree | 0ae95643be1386ef2e76a53fd79c97865f279e7a /src | |
parent | dea7a41138674b45e8cfd5c1d713d4048987c830 (diff) | |
download | rneovim-65ec4ea62972e021065d5a5be83b04bb8da2561a.tar.gz rneovim-65ec4ea62972e021065d5a5be83b04bb8da2561a.tar.bz2 rneovim-65ec4ea62972e021065d5a5be83b04bb8da2561a.zip |
Add assertions for watchers
The clang static analyzer convinced itself lp->ll_newkey could be NULL.
This adds an assertion that checks this doesn't actually happen, as well
as a parallel assertion for di->di_key.
Diffstat (limited to 'src')
-rw-r--r-- | src/nvim/eval.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/nvim/eval.c b/src/nvim/eval.c index f30840041b..555a0506d9 100644 --- a/src/nvim/eval.c +++ b/src/nvim/eval.c @@ -2480,9 +2480,11 @@ static void set_var_lval(lval_T *lp, char_u *endp, typval_T *rettv, notify: if (watched) { if (oldtv.v_type == VAR_UNKNOWN) { + assert(lp->ll_newkey != NULL); tv_dict_watcher_notify(dict, (char *)lp->ll_newkey, lp->ll_tv, NULL); } else { dictitem_T *di = lp->ll_di; + assert(di->di_key != NULL); tv_dict_watcher_notify(dict, (char *)di->di_key, lp->ll_tv, &oldtv); tv_clear(&oldtv); } |