[Systeminfo] Fixed getPropertyValue issue 59/80259/1
authorPiotr Kosko <p.kosko@samsung.com>
Fri, 15 Jul 2016 11:13:07 +0000 (13:13 +0200)
committerPiotr Kosko <p.kosko@samsung.com>
Fri, 15 Jul 2016 11:13:11 +0000 (13:13 +0200)
[Bug] When getPropertyValue failed, async operation counter was not updated properly

[Verification] Code compiles without errors
  TCT passrate 100%.

Change-Id: I1490abf84d122eb34f236a54acdcee792f5659af
Signed-off-by: Piotr Kosko <p.kosko@samsung.com>
src/systeminfo/systeminfo_manager.cc

index c33238314b7d9c39965c25de98521be8fd6e33bd..e9272feefb301c742894d114f93465d5c7cc277d 100644 (file)
@@ -630,13 +630,12 @@ void SysteminfoManager::GetPropertyValue(const picojson::value& args, picojson::
     LoggerD("Getting");
     picojson::value result = picojson::value(picojson::object());
     PlatformResult ret = prop_manager_.GetPropertyValue(prop_id, false, &result);
+    async_op_->finish();
     if (ret.IsError()) {
       LogAndReportError(ret,&(response->get<picojson::object>()));
       return;
     }
     ReportSuccess(result, response->get<picojson::object>());
-
-    async_op_->finish();
   };
 
   auto get_response = [this, callback_id](const std::shared_ptr<picojson::value>& response) -> void {
@@ -667,6 +666,7 @@ void SysteminfoManager::GetPropertyValueArray(const picojson::value& args, picoj
     picojson::value result = picojson::value(picojson::object());
 
     PlatformResult ret = prop_manager_.GetPropertyValue(prop_id, true, &result);
+    async_op_->finish();
     if (ret.IsError()) {
       LogAndReportError(
           ret, &(response->get<picojson::object>()),
@@ -674,8 +674,6 @@ void SysteminfoManager::GetPropertyValueArray(const picojson::value& args, picoj
       return;
     }
     ReportSuccess(result, response->get<picojson::object>());
-
-    async_op_->finish();
   };
 
   auto get_response = [this, callback_id](const std::shared_ptr<picojson::value>& response) -> void {