!7127 落盘resfile

Merge pull request !7127 from Zhou Shihui/resfile
This commit is contained in:
openharmony_ci 2024-09-29 11:39:26 +00:00 committed by Gitee
commit 0962dcd244
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
2 changed files with 17 additions and 0 deletions

View File

@ -322,6 +322,7 @@ private:
static EnforceMetadataProcessForApp enforceMetadataProcessForApp_;
static bool OpenEncryptionHandle();
#endif
static void FsyncResFile(const std::string &path, const ExtractFileType &extractFileType);
};
} // namespace AppExecFwk
} // namespace OHOS

View File

@ -539,9 +539,25 @@ void InstalldOperator::ExtractTargetFile(const BundleExtractor &extractor, const
LOG_E(BMS_TAG_INSTALLD, "ChangeModeFile %{public}s failed, errno: %{public}d", path.c_str(), errno);
return;
}
FsyncResFile(path, extractFileType);
LOG_D(BMS_TAG_INSTALLD, "extract file success, path : %{public}s", path.c_str());
}
void InstalldOperator::FsyncResFile(const std::string &path, const ExtractFileType &extractFileType)
{
if (extractFileType == ExtractFileType::RES_FILE) {
int32_t fileFd = open(path.c_str(), O_RDONLY);
if (fileFd < 0) {
LOG_E(BMS_TAG_INSTALLER, "open %{public}s failed", path.c_str());
return;
}
if (fsync(fileFd) != 0) {
LOG_E(BMS_TAG_INSTALLER, "fsync %{public}s failed", path.c_str());
}
close(fileFd);
}
}
bool InstalldOperator::DeterminePrefix(const ExtractFileType &extractFileType, const std::string &cpuAbi,
std::string &prefix)
{