plugin: exec: properly free memory on parse error
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
This commit is contained in:
parent
bd0ed25214
commit
cc50263504
1 changed files with 7 additions and 2 deletions
9
plugin.c
9
plugin.c
|
@ -321,11 +321,16 @@ rpc_plugin_parse_exec(const char *name, int fd)
|
|||
|
||||
obj_type = calloc(1, sizeof(*obj_type));
|
||||
|
||||
if (!obj_type)
|
||||
if (!obj_type) {
|
||||
free(obj);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (asprintf((char **)&obj_type->name, "luci-rpc-plugin-%s", name) < 0)
|
||||
if (asprintf((char **)&obj_type->name, "luci-rpc-plugin-%s", name) < 0) {
|
||||
free(obj);
|
||||
free(obj_type);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
obj_type->methods = methods;
|
||||
obj_type->n_methods = n_method;
|
||||
|
|
Loading…
Reference in a new issue