]> granicus.if.org Git - vim/commitdiff
patch 8.1.1054: not checking return value of ga_grow() v8.1.1054
authorBram Moolenaar <Bram@vim.org>
Tue, 26 Mar 2019 20:44:20 +0000 (21:44 +0100)
committerBram Moolenaar <Bram@vim.org>
Tue, 26 Mar 2019 20:44:20 +0000 (21:44 +0100)
Problem:    Not checking return value of ga_grow(). (Coverity)
Solution:   Only append when ga_grow() returns OK.

src/if_lua.c
src/version.c

index 825e8346f66114a54bfc5ac504a7683c73beac05..cfb28852270bf9dc7921cd652c9f988930109add 100644 (file)
@@ -1144,9 +1144,9 @@ luaV_blob_add(lua_State *L)
        size_t i, l = 0;
        const char *s = lua_tolstring(L, 2, &l);
 
-       ga_grow(&b->bv_ga, l);
-       for (i = 0; i < l; ++i)
-           ga_append(&b->bv_ga, s[i]);
+       if (ga_grow(&b->bv_ga, l) == OK)
+           for (i = 0; i < l; ++i)
+               ga_append(&b->bv_ga, s[i]);
     }
     lua_settop(L, 1);
     return 1;
@@ -1776,9 +1776,9 @@ luaV_blob(lua_State *L)
            size_t i, l = 0;
            const char *s = lua_tolstring(L, 1, &l);
 
-           ga_grow(&b->bv_ga, l);
-           for (i = 0; i < l; ++i)
-               ga_append(&b->bv_ga, s[i]);
+           if (ga_grow(&b->bv_ga, l) == OK)
+               for (i = 0; i < l; ++i)
+                   ga_append(&b->bv_ga, s[i]);
        }
     }
     return 1;
index dd746ca226ca2534bd02ed386b6de2e37d1bc56a..ba149819727d58af2bab2252509909f1eb7b4893 100644 (file)
@@ -775,6 +775,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1054,
 /**/
     1053,
 /**/