From 785b16d9051b3f76669d14b103cb5a897db9f65d Mon Sep 17 00:00:00 2001 From: Andrew Chin Date: Fri, 30 May 2014 15:42:32 -0400 Subject: Prevent null-pointer deference during vim_eval #785 If the eval_expr call in vim_eval returns NULL, a null-pointer deference would happen a few frames down, in vim_to_object_rec --- src/nvim/api/vim.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/nvim/api/vim.c') diff --git a/src/nvim/api/vim.c b/src/nvim/api/vim.c index 653e6b34c7..b99311a61a 100644 --- a/src/nvim/api/vim.c +++ b/src/nvim/api/vim.c @@ -61,6 +61,10 @@ Object vim_eval(String str, Error *err) try_start(); typval_T *expr_result = eval_expr((char_u *) str.data, NULL); + if (!expr_result) { + set_api_error("Failed to eval expression", err); + } + if (!try_end(err)) { // No errors, convert the result rv = vim_to_object(expr_result); -- cgit