From: j-h.choi Date: Tue, 29 Oct 2019 07:58:56 +0000 (+0900) Subject: Modify to enable TAC when restoring a database of TAC X-Git-Tag: submit/tizen_5.5/20191120.034924~3 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=745aeb92e8e20cd8f4fd7a4a80905224e362af6c;p=platform%2Fcore%2Fdotnet%2Flauncher.git Modify to enable TAC when restoring a database of TAC --- diff --git a/NativeLauncher/tool/tac_common.cc b/NativeLauncher/tool/tac_common.cc index 771db08..0cce217 100644 --- a/NativeLauncher/tool/tac_common.cc +++ b/NativeLauncher/tool/tac_common.cc @@ -88,6 +88,8 @@ static int restoreDBCb(pkgmgrinfo_appinfo_h handle, void *userData) return -1; } + enableTACPackage(std::string(pkgId)); + ret = pkgmgrinfo_appinfo_get_root_path(handle, &root); if (ret != PMINFO_R_OK) { fprintf(stderr, "Failed to get root path\n"); @@ -103,9 +105,14 @@ static int restoreDBCb(pkgmgrinfo_appinfo_h handle, void *userData) execName = std::string(exec).substr(std::string(exec).rfind('/') + 1); std::vector parserData; + std::string binDir = concatPath(rootPath, "bin"); + std::string tacDir = concatPath(binDir, TAC_SYMLINK_SUB_DIR); for (auto& npAssembly : depsJsonParser(rootPath, execName, getTPA())) { std::string nugetPackage = npAssembly.substr(0, npAssembly.rfind(':')); - parserData.push_back(nugetPackage); + std::string assemblyName = npAssembly.substr(npAssembly.rfind(':') + 1); + if (bf::exists(tacDir) && bf::exists(concatPath(tacDir, assemblyName))) { + parserData.push_back(nugetPackage); + } } std::sort(parserData.begin(), parserData.end()); parserData.erase(unique(parserData.begin(), parserData.end()), parserData.end());