Signed-off-by: Yousong Zhou <yszhou4t...@gmail.com>
---
 plugin.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/plugin.c b/plugin.c
index 3740622..d3526aa 100644
--- a/plugin.c
+++ b/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;

_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to