eval: Still check for NULL when doing :unlet

This commit is contained in:
ZyX
2017-12-10 23:18:24 +03:00
parent 622d355ab4
commit fe55f37083

View File

@@ -2875,9 +2875,12 @@ static int do_unlet_var(lval_T *const lp, char_u *const name_end, int forceit)
ret = FAIL; ret = FAIL;
} }
*name_end = cc; *name_end = cc;
} else if (tv_check_lock(tv_list_locked(lp->ll_list), } else if ((lp->ll_list != NULL
(const char *)lp->ll_name, // ll_list is not NULL when lvalue is not in a list, NULL lists
lp->ll_name_len) // yield E689.
&& tv_check_lock(tv_list_locked(lp->ll_list),
(const char *)lp->ll_name,
lp->ll_name_len))
|| (lp->ll_dict != NULL || (lp->ll_dict != NULL
&& tv_check_lock(lp->ll_dict->dv_lock, && tv_check_lock(lp->ll_dict->dv_lock,
(const char *)lp->ll_name, (const char *)lp->ll_name,