Mercurial > vim
comparison src/vim9execute.c @ 21576:f4252efe370e v8.2.1338
patch 8.2.1338: Vim9: assigning to script-local variable doesn't check type
Commit: https://github.com/vim/vim/commit/8e4c8c853e3ffbd9258f89180692879ec6bce72b
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Aug 1 15:38:38 2020 +0200
patch 8.2.1338: Vim9: assigning to script-local variable doesn't check type
Problem: Vim9: assigning to script-local variable doesn't check type.
Solution: Use the type. (issue https://github.com/vim/vim/issues/6591)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 01 Aug 2020 15:45:06 +0200 |
parents | b8b15e8cbf5f |
children | 9ef7ae8ab51c |
comparison
equal
deleted
inserted
replaced
21575:69d8fbc507a1 | 21576:f4252efe370e |
---|---|
1420 char_u *key = tv_key->vval.v_string; | 1420 char_u *key = tv_key->vval.v_string; |
1421 typval_T *tv_dict = STACK_TV_BOT(-1); | 1421 typval_T *tv_dict = STACK_TV_BOT(-1); |
1422 dict_T *dict = tv_dict->vval.v_dict; | 1422 dict_T *dict = tv_dict->vval.v_dict; |
1423 dictitem_T *di; | 1423 dictitem_T *di; |
1424 | 1424 |
1425 if (dict == NULL) | |
1426 { | |
1427 emsg(_(e_dictnull)); | |
1428 goto on_error; | |
1429 } | |
1425 if (key == NULL) | 1430 if (key == NULL) |
1426 key = (char_u *)""; | 1431 key = (char_u *)""; |
1427 tv = STACK_TV_BOT(-3); | 1432 tv = STACK_TV_BOT(-3); |
1428 di = dict_find(dict, key, -1); | 1433 di = dict_find(dict, key, -1); |
1429 if (di != NULL) | 1434 if (di != NULL) |