]> granicus.if.org Git - vim/commitdiff
patch 8.0.0340: not checking return valud of dict_add() v8.0.0340
authorBram Moolenaar <Bram@vim.org>
Sun, 19 Feb 2017 12:55:02 +0000 (13:55 +0100)
committerBram Moolenaar <Bram@vim.org>
Sun, 19 Feb 2017 12:55:02 +0000 (13:55 +0100)
Problem:    Not checking return valud of dict_add(). (Coverity)
Solution:   Handle a failure.

src/buffer.c
src/version.c

index bc5dd5b472ce06b860d39e9683b526728e6165f1..328c2b37c290d117fe8079588475889a6c767cf6 100644 (file)
@@ -888,8 +888,13 @@ init_changedtick(buf_T *buf)
        di->di_tv.v_type = VAR_NUMBER;
        di->di_tv.v_lock = VAR_FIXED;
        di->di_tv.vval.v_number = 0;
-       dict_add(buf->b_vars, di);
-       buf->b_changedtick = &di->di_tv.vval.v_number;
+       if (dict_add(buf->b_vars, di) == OK)
+           buf->b_changedtick = &di->di_tv.vval.v_number;
+       else
+       {
+           vim_free(di);
+           buf->b_changedtick = &buf->b_ct_val;
+       }
     }
     else
 #endif
index 41a0321edb327cbc5f21481a8ca59a68e61f1a6d..ef71d0e3919d8a1bd8b843a230e0523663a25621 100644 (file)
@@ -764,6 +764,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    340,
 /**/
     339,
 /**/