api: fromjson/tojson generated code memory leak 41/30641/2
authorOle Troan <ot@cisco.com>
Wed, 6 Jan 2021 12:58:00 +0000 (13:58 +0100)
committerDave Barach <openvpp@barachs.net>
Wed, 6 Jan 2021 17:05:40 +0000 (17:05 +0000)
Found by coverity. Fix potential memory leakage in generated code.

Type: fix
Signed-off-by: Ole Troan <ot@cisco.com>
Change-Id: If492541b8b66e574f30ecdd0dd533099cbe068ad

src/tools/vppapigen/vppapigen_c.py

index 66e0c2f..0727619 100644 (file)
@@ -553,7 +553,7 @@ class FromJSON():
 
             write('    item = cJSON_GetObjectItem(o, "{}");\n'
                   .format(t.fieldname))
-            write('    if (!item) return 0;\n')
+            write('    if (!item) { free(a); return 0; }\n')
             self._dispatch[t.type](self, t, toplevel=True)
             write('\n')