From 9ad0e4c0f34896ea7c299e762c703d37429a4ac9 Mon Sep 17 00:00:00 2001 From: z30034863 Date: Thu, 12 Jun 2025 22:16:31 +0800 Subject: [PATCH] fix ohos too long --hap-path Signed-off-by: z30034863 --- packing_tool/frameworks/src/packager.cpp | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/packing_tool/frameworks/src/packager.cpp b/packing_tool/frameworks/src/packager.cpp index 932409f7..ddaa7b94 100644 --- a/packing_tool/frameworks/src/packager.cpp +++ b/packing_tool/frameworks/src/packager.cpp @@ -98,16 +98,22 @@ bool Packager::CheckForceFlag() bool Packager::IsPathValid(const std::string &path, const bool &isFile, const std::string suffix) { - if (isFile && fs::is_regular_file(path)) { - std::string name = fs::path(path).filename(); - std::locale englishLocale(EN_US_UTF_8); - std::transform(name.begin(), name.end(), name.begin(), - [&englishLocale](unsigned char c) { return std::tolower(c); }); - if (Utils::EndsWith(name, suffix)) { - return true; + try { + if (isFile) { + if (!fs::is_regular_file(path)) { + return false; + } + const std::locale englishLocale(EN_US_UTF_8); + std::string name = fs::path(path).filename(); + std::transform(name.begin(), name.end(), name.begin(), + [&englishLocale](unsigned char c) { return std::tolower(c); }); + return Utils::EndsWith(name, suffix); } + return fs::is_directory(path); + } catch (...) { + LOGW("Param parse error"); + return false; } - return (!isFile) && fs::is_directory(path); } bool Packager::IsFileMatch(const std::string &path, const std::string &matchFileName) -- Gitee