X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=resource%2Fcsdk%2Fresource-directory%2Fsrc%2FRDClient.cpp;h=cc1dfc0c1eb140829e1116dc3b181624ae6178ad;hb=55283efd23d570e22010e2a403adea20d16210b9;hp=36140bdeb1467f56cdacc5cae8239b80c1a4c6c0;hpb=7bcbe1689b9b414d5f857076b3af400d8d8e9b65;p=platform%2Fupstream%2Fiotivity.git diff --git a/resource/csdk/resource-directory/src/RDClient.cpp b/resource/csdk/resource-directory/src/RDClient.cpp index 36140bd..cc1dfc0 100644 --- a/resource/csdk/resource-directory/src/RDClient.cpp +++ b/resource/csdk/resource-directory/src/RDClient.cpp @@ -32,6 +32,7 @@ #include "OCPlatform.h" #include "OCException.h" #include "ocpayload.h" +#include "oic_malloc.h" using namespace OC; @@ -88,10 +89,21 @@ OCStackApplicationResult publishResourceToRDCallback(void* ctx, OCDoHandle /*han char *uri = NULL; OCRepPayloadGetPropString(links[i], OC_RSRVD_HREF, &uri); OCResourceHandle handle = OCGetResourceHandleAtUri(uri); + int64_t ins = 0; OCRepPayloadGetPropInt(links[i], OC_RSRVD_INS, &ins); OCBindResourceInsToResource(handle, ins); + + OICFree(uri); + } + + // Free links + size_t count = calcDimTotal(dimensions); + for (size_t k = 0; k < count; k++) + { + OCRepPayloadDestroy(links[k]); } + OICFree(links); } OCRepresentation rep = parseRDResponseCallback(clientResponse); std::thread exec(context->callback, rep, clientResponse->result);