diff --git a/packing_tool/frameworks/src/package_normalize.cpp b/packing_tool/frameworks/src/package_normalize.cpp index a116c0ef24ce24b6f778f932e14973e7336c8b21..2b2a528ad2a9084faa2ae684d27e135e46d3a038 100644 --- a/packing_tool/frameworks/src/package_normalize.cpp +++ b/packing_tool/frameworks/src/package_normalize.cpp @@ -122,7 +122,19 @@ int32_t PackageNormalize::Process() std::string outPath = parameterMap_.at(Constants::PARAM_OUT_PATH); std::string tempPath = outPath + Constants::LINUX_FILE_SEPARATOR + Constants::COMPRESSOR_PACKAGENORMALIZE_TEMP_DIR + Utils::GenerateUUID(); - int32_t versionCode = std::stoi(parameterMap_.at(Constants::PARAM_VERSION_CODE)); + int32_t versionCode = 0; + auto it = parameterMap_.find(Constants::PARAM_VERSION_CODE); + if (it != parameterMap_.end()) { + try { + versionCode = std::stoi(it->second); + } catch (const std::exception& e) { + LOGE("Exception: %s", e.what()); + return ERR_INVALID_VALUE; + } + } else { + LOGE("Parameter not found: %s", Constants::PARAM_VERSION_CODE.c_str()); + return ERR_INVALID_VALUE; + } std::string bundleName = parameterMap_.at(Constants::PARAM_BUNDLE_NAME); for (const std::string &path : hspList_) { if (ZipUtils::Unzip(path, tempPath) != ZIP_ERR_SUCCESS) { diff --git a/packing_tool/frameworks/src/version_normalize.cpp b/packing_tool/frameworks/src/version_normalize.cpp index 4fbd3a8b6d89a280c3eac16f3140c5ffe78da414..850923d4710f8f8aae071a9fc4e43d0ba4c3d47e 100644 --- a/packing_tool/frameworks/src/version_normalize.cpp +++ b/packing_tool/frameworks/src/version_normalize.cpp @@ -266,7 +266,19 @@ int32_t VersionNormalize::Process() std::string outPath = parameterMap_.at(Constants::PARAM_OUT_PATH); std::string tempPath = outPath + Constants::LINUX_FILE_SEPARATOR + Constants::COMPRESSOR_VERSIONNORMALIZE_TEMP_DIR + Utils::GenerateUUID(); - int32_t versionCode = std::stoi(parameterMap_.at(Constants::PARAM_VERSION_CODE)); + int32_t versionCode = 0; + auto it = parameterMap_.find(Constants::PARAM_VERSION_CODE); + if (it != parameterMap_.end()) { + try { + versionCode = std::stoi(it->second); + } catch (const std::exception& e) { + LOGE("Exception: %s", e.what()); + return ERR_INVALID_VALUE; + } + } else { + LOGE("Parameter not found: %s", Constants::PARAM_VERSION_CODE.c_str()); + return ERR_INVALID_VALUE; + } std::string versionName = parameterMap_.at(Constants::PARAM_VERSION_NAME); std::list normalizeVersionList;