modified observe logic in ocstack
authorjihwan.seo <jihwan.seo@samsung.com>
Thu, 2 Jun 2016 10:44:35 +0000 (19:44 +0900)
committerJon A. Cruz <jon@joncruz.org>
Fri, 3 Jun 2016 09:10:06 +0000 (09:10 +0000)
when register/deregister of observation is failed,
ocstack will send response directly.

Change-Id: Ifb93dfbf2cc2ae5a449e676442194a5e8fa09976
Signed-off-by: jihwan.seo <jihwan.seo@samsung.com>
Reviewed-on: https://gerrit.iotivity.org/gerrit/8431
Tested-by: jenkins-iotivity <jenkins-iotivity@opendaylight.org>
Reviewed-by: Jon A. Cruz <jon@joncruz.org>
resource/csdk/stack/src/ocresource.c

index b503ab7..e862549 100755 (executable)
@@ -1096,13 +1096,13 @@ HandleResourceWithEntityHandler (OCServerRequest *request,
         }
         else
         {
-            result = OC_STACK_OK;
-
             // The error in observeResult for the request will be used when responding to this
             // request by omitting the observation option/sequence number.
             request->observeResult = OC_STACK_ERROR;
             OIC_LOG(ERROR, TAG, "Observer Addition failed");
             ehFlag = OC_REQUEST_FLAG;
+            FindAndDeleteServerRequest(request);
+            goto exit;
         }
 
     }
@@ -1132,9 +1132,10 @@ HandleResourceWithEntityHandler (OCServerRequest *request,
         }
         else
         {
-            result = OC_STACK_OK;
             request->observeResult = OC_STACK_ERROR;
             OIC_LOG(ERROR, TAG, "Observer Removal failed");
+            FindAndDeleteServerRequest(request);
+            goto exit;
         }
     }
     else