diff options
author | ZyX <kp-pav@yandex.ru> | 2017-12-10 22:41:00 +0300 |
---|---|---|
committer | ZyX <kp-pav@yandex.ru> | 2017-12-10 22:41:00 +0300 |
commit | 7572d5ac5a09c18651843c026ebc92bffafe348f (patch) | |
tree | 3f95763c901d054fab97d867f3627a482dc354da /src/nvim/eval/encode.c | |
parent | 0b03ac2cb2399a850bb71d8c0a76d0893bf503cb (diff) | |
download | rneovim-7572d5ac5a09c18651843c026ebc92bffafe348f.tar.gz rneovim-7572d5ac5a09c18651843c026ebc92bffafe348f.tar.bz2 rneovim-7572d5ac5a09c18651843c026ebc92bffafe348f.zip |
eval/encode: Fix crash in json_encode test suite
Diffstat (limited to 'src/nvim/eval/encode.c')
-rw-r--r-- | src/nvim/eval/encode.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/nvim/eval/encode.c b/src/nvim/eval/encode.c index 0e5db84ad5..50ddb1f38c 100644 --- a/src/nvim/eval/encode.c +++ b/src/nvim/eval/encode.c @@ -136,8 +136,10 @@ static int conv_error(const char *const msg, const MPConvStack *const mpstack, } case kMPConvPairs: case kMPConvList: { - const listitem_T *const li = TV_LIST_ITEM_PREV(v.data.l.list, - v.data.l.li); + const listitem_T *const li = (v.data.l.li == NULL + ? tv_list_last(v.data.l.list) + : TV_LIST_ITEM_PREV(v.data.l.list, + v.data.l.li)); int idx = (int)tv_list_idx_of_item(v.data.l.list, li); if (v.type == kMPConvList || li == NULL |