# HG changeset patch # User Christian Brabandt # Date 1453581904 -3600 # Node ID 9d79943791ea7e78589b51ae69adf83c49395ad4 # Parent a1465a06a3e46408784c8834d1a9822772e32eb3 commit https://github.com/vim/vim/commit/2dedb45260604911035cff2364aca90a69156ed9 Author: Bram Moolenaar Date: Sat Jan 23 21:38:51 2016 +0100 patch 7.4.1156 Problem: Coverity warns for NULL pointer and ignoring return value. Solution: Check for NULL pointer. When dict_add() returns FAIL free the item. diff --git a/src/json.c b/src/json.c --- a/src/json.c +++ b/src/json.c @@ -318,7 +318,8 @@ json_decode_object(js_read_T *reader, ty goto fail; } di->di_tv = item; - dict_add(res->vval.v_dict, di); + if (dict_add(res->vval.v_dict, di) == FAIL) + dictitem_free(di); json_skip_white(reader); p = reader->js_buf + reader->js_used; @@ -398,7 +399,10 @@ json_decode_string(js_read_T *reader, ty { ++reader->js_used; res->v_type = VAR_STRING; - res->vval.v_string = vim_strsave(ga.ga_data); + if (ga.ga_data == NULL) + res->vval.v_string = NULL; + else + res->vval.v_string = vim_strsave(ga.ga_data); } else { diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -742,6 +742,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1156, +/**/ 1155, /**/ 1154,