From 979d7e25d9f19da26c521e3eb65ce58317053ddb Mon Sep 17 00:00:00 2001 From: youngman Date: Fri, 9 Sep 2016 08:41:53 +0900 Subject: fix memory leak in converting acl step Change-Id: Ice695ceb2b5fcff68fb6d34702e7d939aaa9cea0 Signed-off-by: youngman --- src/ic-provisioning.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/ic-provisioning.c b/src/ic-provisioning.c index fab9908..f4df214 100644 --- a/src/ic-provisioning.c +++ b/src/ic-provisioning.c @@ -522,6 +522,8 @@ static OicSecAcl_t* _provisioning_convert_acl(iotcon_provisioning_device_h devic resource->types = calloc(1, sizeof(char*)); if (NULL == resource->types) { ERR("calloc() Fail(%d)", errno); + free(resource); + OCDeleteACLList(oic_acl); return NULL; } resource->types[0] = strdup(" "); @@ -530,6 +532,10 @@ static OicSecAcl_t* _provisioning_convert_acl(iotcon_provisioning_device_h devic resource->interfaces = calloc(1, sizeof(char*)); if (NULL == resource->interfaces) { ERR("calloc() Fail(%d)", errno); + free(resource->types[0]); + free(resource->types); + free(resource); + OCDeleteACLList(oic_acl); return NULL; } resource->interfaces[0] = strdup(OC_RSRVD_INTERFACE_DEFAULT); -- cgit v1.2.3