From: Minji Park Date: Wed, 9 Nov 2016 09:33:14 +0000 (+0900) Subject: Fix static analysis issues in CA, rd_client and ocstack X-Git-Tag: 1.2.1~111 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=afc58edbfe2edc46ce684d246d408b9c83c66a44;p=platform%2Fupstream%2Fiotivity.git Fix static analysis issues in CA, rd_client and ocstack - variable initialization and null checking added Change-Id: Ibb47193ccb480941abfa71b0d32020891d2025f6 Signed-off-by: Minji Park Reviewed-on: https://gerrit.iotivity.org/gerrit/14157 Tested-by: jenkins-iotivity Reviewed-by: Jaehong Jo Reviewed-by: Habib Virji Reviewed-on: https://gerrit.iotivity.org/gerrit/14339 Reviewed-by: Uze Choi Reviewed-by: Phil Coval --- diff --git a/resource/csdk/resource-directory/src/rd_client.c b/resource/csdk/resource-directory/src/rd_client.c index 58c620c..df2a66b 100644 --- a/resource/csdk/resource-directory/src/rd_client.c +++ b/resource/csdk/resource-directory/src/rd_client.c @@ -185,6 +185,19 @@ OCStackResult OCRDPublishWithDeviceId(const char *host, const unsigned char *id, size_t mtDim[MAX_REP_ARRAY_DEPTH] = {1, 0, 0}; char **mediaType = (char **)OICMalloc(sizeof(char *) * 1); + if (!mediaType) + { + OIC_LOG(ERROR, TAG, "Memory allocation failed!"); + + for(uint8_t i = 0; i < nPubResHandles; i++) + { + OCRepPayloadDestroy(linkArr[i]); + } + OICFree(linkArr); + OCRepPayloadDestroy(rdPayload); + return OC_STACK_NO_MEMORY; + } + mediaType[0] = OICStrdup(DEFAULT_MESSAGE_TYPE); OCRepPayloadSetStringArrayAsOwner(link, OC_RSRVD_MEDIA_TYPE, mediaType, mtDim); diff --git a/resource/csdk/stack/src/ocstack.c b/resource/csdk/stack/src/ocstack.c index 2e1a644..8d8b420 100644 --- a/resource/csdk/stack/src/ocstack.c +++ b/resource/csdk/stack/src/ocstack.c @@ -4890,7 +4890,7 @@ OCStackResult OCUpdateResourceInsWithResponse(const char *requestUri, { OCRepPayload *rdPayload = (OCRepPayload *) response->payload; OCRepPayload **links = NULL; - size_t dimensions[MAX_REP_ARRAY_DEPTH]; + size_t dimensions[MAX_REP_ARRAY_DEPTH] = { 0 }; if (OCRepPayloadGetPropObjectArray(rdPayload, OC_RSRVD_LINKS, &links, dimensions)) {