aboutsummaryrefslogtreecommitdiff
path: root/test/functional/eval/json_functions_spec.lua
diff options
context:
space:
mode:
authorAdrian Neumann <adrian_neumann@gmx.de>2017-09-28 10:19:57 +0200
committerJustin M. Keyes <justinkz@gmail.com>2017-11-06 05:00:58 +0100
commit8f03014e8861df7f49bf4e1dbdfcc20e1611ce35 (patch)
tree33bc5bc3af4e2ff6337f8c976f42de7fa48a0aed /test/functional/eval/json_functions_spec.lua
parentd31b94ac209d2161f60084d5fa1e18f0cbaf0207 (diff)
downloadrneovim-8f03014e8861df7f49bf4e1dbdfcc20e1611ce35.tar.gz
rneovim-8f03014e8861df7f49bf4e1dbdfcc20e1611ce35.tar.bz2
rneovim-8f03014e8861df7f49bf4e1dbdfcc20e1611ce35.zip
eval/decode.c: Avoid NULL arg to memchr() #7332
Clang complains because memchr has undefined behavior if the ptr is NULL, even if len==0. Helped-by: Nikolai Aleksandrovich Pavlov <kp-pav@yandex.ru>
Diffstat (limited to 'test/functional/eval/json_functions_spec.lua')
-rw-r--r--test/functional/eval/json_functions_spec.lua7
1 files changed, 7 insertions, 0 deletions
diff --git a/test/functional/eval/json_functions_spec.lua b/test/functional/eval/json_functions_spec.lua
index 4d34cde849..8dcaea806e 100644
--- a/test/functional/eval/json_functions_spec.lua
+++ b/test/functional/eval/json_functions_spec.lua
@@ -776,4 +776,11 @@ describe('json_encode() function', function()
it('can dump NULL dictionary', function()
eq('{}', eval('json_encode(v:_null_dict)'))
end)
+
+ it('fails to parse NULL strings and lists', function()
+ eq('Vim(call):E474: Attempt to decode a blank string',
+ exc_exec('call json_decode($XXX_UNEXISTENT_VAR_XXX)'))
+ eq('Vim(call):E474: Attempt to decode a blank string',
+ exc_exec('call json_decode(v:_null_list)'))
+ end)
end)