From: jihwan.seo Date: Fri, 7 Oct 2016 10:54:44 +0000 (+0900) Subject: [IOT-1434] Fix memory leak related server request List. X-Git-Tag: 1.3.0~1055^2~90 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=9b652215b586ccba68eb62cfb5ae67b5c2975542;p=platform%2Fupstream%2Fiotivity.git [IOT-1434] Fix memory leak related server request List. when there is no response data for virtual reqeust in server. it should be removed, since it never remove and causes a big memory leak. Change-Id: Ic65692ae8b2c1c27f554f466d00bd0cc1674118f Signed-off-by: jihwan.seo Reviewed-on: https://gerrit.iotivity.org/gerrit/12947 Reviewed-by: Ashok Babu Channa Tested-by: jenkins-iotivity (cherry picked from commit d54b727a3f55d0238393fd14781e0723df4a9e17) Reviewed-on: https://gerrit.iotivity.org/gerrit/13057 --- diff --git a/resource/csdk/stack/src/ocresource.c b/resource/csdk/stack/src/ocresource.c index 2f1a964..35fd4be 100755 --- a/resource/csdk/stack/src/ocresource.c +++ b/resource/csdk/stack/src/ocresource.c @@ -852,6 +852,7 @@ static OCStackResult HandleVirtualResource (OCServerRequest *request, OCResource SendDirectStackResponse(&endpoint, request->coapID, CA_EMPTY, CA_MSG_ACKNOWLEDGE, 0, NULL, NULL, 0, NULL, CA_RESPONSE_FOR_RES); } + FindAndDeleteServerRequest(request); // Presence uses observer notification api to respond via SendPresenceNotification. SendPresenceNotification(resource->rsrcType, OC_PRESENCE_TRIGGER_CHANGE); @@ -880,6 +881,8 @@ static OCStackResult HandleVirtualResource (OCServerRequest *request, OCResource { // Ignoring the discovery request as per RFC 7252, Section #8.2 OIC_LOG(INFO, TAG, "Silently ignoring the request since no useful data to send. "); + // the request should be removed. since it never remove and causes a big memory waste. + FindAndDeleteServerRequest(request); } }