if (!deviceId)
{
OIC_LOG(ERROR, TAG, "Failed retrieving device id.");
+ OCPayloadDestroy((OCPayload *)tempPayload);
return OC_STACK_ERROR;
}
OCRepPayloadSetPropString(tempPayload, OC_RSRVD_DEVICE_ID, deviceId);
OIC_LOG(INFO, TAG, "Exit HandleCAErrorResponse");
OIC_TRACE_END();
+ if(NULL != observer)
+ {
+ OICFree(observer);
+ observer = NULL;
+ }
}
/*
OCFREE(desc)
OCFREE(capa)
OCFREE(action)
+ if (*set)
+ {
OCFREE((*set)->actionsetName)
OCFREE(*set)
+ }
OCFREE(key)
OCFREE(value)
OCFREE(attr)
} \
}
+#define NS_VERIFY_NOT_NULL_EXIT(obj) \
+ { \
+ if (!(obj)) \
+ { \
+ NS_LOG_V(ERROR, "%s : %s is null", __func__, #obj); \
+ goto exit; \
+ } \
+ }
+
#define NS_VERIFY_NOT_NULL(obj, retVal) \
{ \
if ((obj) == NULL) \
if (!OCRepPayloadGetPropInt(repPayload, NS_ATTRIBUTE_STATE, &state))
{
OICFree(retSync);
+ OICFree(providerId);
return NULL;
}
&& strcmp(reqInterface, NS_INTERFACE_READ) != 0)\r
{\r
NS_LOG(ERROR, "Invalid interface");\r
+ NSOICFree(reqInterface);\r
return ehResult;\r
}\r
ehResult = OC_EH_OK;\r
&& strcmp(reqInterface, NS_INTERFACE_READWRITE) != 0)\r
{\r
NS_LOG(ERROR, "Invalid interface");\r
+ NSOICFree(reqInterface);\r
return ehResult;\r
}\r
\r
&& strcmp(reqInterface, NS_INTERFACE_READWRITE) != 0)\r
{\r
NS_LOG(ERROR, "Invalid interface");\r
+ NSOICFree(reqInterface);\r
return ehResult;\r
}\r
// send consumer's interesting topic list if consumer id exists\r
NSCacheElement * element = (NSCacheElement *) OICMalloc(sizeof(NSCacheElement));\r
NS_VERIFY_NOT_NULL_V(element);\r
NSCacheSubData * subData = (NSCacheSubData *) OICMalloc(sizeof(NSCacheSubData));\r
- NS_VERIFY_NOT_NULL_V(subData);\r
-\r
+ if (!subData)\r
+ {\r
+ NS_LOG(ERROR, "Memory assignment to subData failed");\r
+ NSOICFree(element);\r
+ return;\r
+ }\r
OICStrcpy(subData->id, UUID_STRING_SIZE, id);\r
NS_LOG_V(INFO_PRIVATE, "SubList ID = [%s]", subData->id);\r
\r
NSCacheElement * element = (NSCacheElement *) OICMalloc(sizeof(NSCacheElement));\r
NS_VERIFY_NOT_NULL_V(element);\r
NSCacheSubData * subData = (NSCacheSubData *) OICMalloc(sizeof(NSCacheSubData));\r
- NS_VERIFY_NOT_NULL_V(subData);\r
+ if (!subData)\r
+ {\r
+ NS_LOG(ERROR, "Memory assignment to subData failed");\r
+ NSOICFree(element);\r
+ return;\r
+ }\r
\r
OICStrcpy(subData->id, UUID_STRING_SIZE, id);\r
NS_LOG_V(INFO_PRIVATE, "SubList ID = [%s]", subData->id);\r
NS_LOG_V(DEBUG, "topicState = %d",(int) topics->state);
payloadTopicArray[i] = OCRepPayloadCreate();
- NS_VERIFY_NOT_NULL(payloadTopicArray[i], NS_ERROR);
+ if (!payloadTopicArray[i])
+ {
+ NS_LOG_V(ERROR, "payloadTopicArray[%d] is NULL", i);
+ NSOICFree(payloadTopicArray);
+ return;
+ }
+
OCRepPayloadSetPropString(payloadTopicArray[i], NS_ATTRIBUTE_TOPIC_NAME,
topics->topicName);
OCRepPayloadSetPropInt(payloadTopicArray[i], NS_ATTRIBUTE_TOPIC_SELECTION,
{
NSCacheTopicSubData * topicSubData = (NSCacheTopicSubData *) OICMalloc(
sizeof(NSCacheTopicSubData));
- NS_VERIFY_NOT_NULL(topicSubData, NS_FAIL);
+ NS_VERIFY_NOT_NULL_EXIT(topicSubData);
OICStrcpy(topicSubData->id, NS_UUID_STRING_SIZE, consumerId);
topicSubData->topicName = topicName;
NSOICFree(consumerId);
NS_LOG(DEBUG, "NSPostConsumerTopics() - OUT");
return NS_OK;
+
+exit:
+ OICFree(topicListPayload);
+ return NS_FAIL;
}
void * NSTopicSchedule(void * ptr)
if (NSProviderStorageWrite(consumerTopicList, newObj) == NS_OK)
{
+ if(subData)
+ {
NSSendTopicUpdationToConsumer(subData->id);
+ }
topicSyncResult->result = NS_OK;
}
}