Fix query IsHybridApplication() 27/118927/5
authorDamian Pietruchowski <d.pietruchow@samsung.com>
Tue, 14 Mar 2017 08:22:34 +0000 (09:22 +0100)
committerDamian Pietruchowski <d.pietruchow@samsung.com>
Tue, 14 Mar 2017 14:51:00 +0000 (07:51 -0700)
Recovery file naming rule is changed to: wgt-recovery-<tmpstr>,
so argument of find() function should be changed to "wgt-recovery-"
for query is recovery request type.
If #is_recovery is true it should not trying to unpack recovery file

Change-Id: I37f9f31df602bab1a39702e6306082d8b10e2a03
Signed-off-by: Damian Pietruchowski <d.pietruchow@samsung.com>
src/wgt/wgt_app_query_interface.cc

index 464165d..7b2eee4 100644 (file)
@@ -102,7 +102,8 @@ bool WgtAppQueryInterface::IsPkgInstalled(const std::string& arg, uid_t uid) {
 bool WgtAppQueryInterface::IsHybridApplication(const std::string& arg,
     uid_t uid) {
   std::string info;
-  if (arg.find("apps_rw/recovery-") != std::string::npos)
+  bool is_recovery = arg.find("wgt-recovery-") != std::string::npos;
+  if (is_recovery)
     info = ReadPkgidFromRecovery(arg);
   else
     info = arg;
@@ -112,7 +113,7 @@ bool WgtAppQueryInterface::IsHybridApplication(const std::string& arg,
     if (bf::exists(package_directory / info / kTizenManifestLocation) &&
         bf::exists(package_directory / info / kHybridConfigLocation))
       return true;
-  } else {
+  } else if (!is_recovery) {
     bool tizen_manifest_found = false;
     bool config_xml_found = false;
     if (!ci::CheckPathInZipArchive(info.c_str(), kTizenManifestLocation,