From d17e6e5d4aaa6d8da47ce3e636807a3eeddcf43c Mon Sep 17 00:00:00 2001 From: g00613291 Date: Sat, 30 Nov 2024 19:18:15 +0800 Subject: [PATCH] fix crash when bundleName is invalid Signed-off-by: g00613291 --- services/backup_sa/src/module_external/bms_adapter.cpp | 4 ++++ utils/src/b_jsonutil/b_jsonutil.cpp | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/services/backup_sa/src/module_external/bms_adapter.cpp b/services/backup_sa/src/module_external/bms_adapter.cpp index 7f94e2c27..e8322327c 100644 --- a/services/backup_sa/src/module_external/bms_adapter.cpp +++ b/services/backup_sa/src/module_external/bms_adapter.cpp @@ -119,6 +119,10 @@ vector BundleMgrAdapter::GetBundleInfos(const vecto HILOGI("Start, bundleNames size:%{public}zu", bundleNames.size()); for (auto const &bundleName : bundleNames) { HILOGI("Begin Get bundleName:%{public}s", bundleName.c_str()); + if (bundleName.empty()) { + HILOGE("BundleName is invalid"); + continue; + } if (SAUtils::IsSABundleName(bundleName)) { GetBundleInfoForSA(bundleName, bundleInfos); continue; diff --git a/utils/src/b_jsonutil/b_jsonutil.cpp b/utils/src/b_jsonutil/b_jsonutil.cpp index 24c841ebe..a737cc35e 100644 --- a/utils/src/b_jsonutil/b_jsonutil.cpp +++ b/utils/src/b_jsonutil/b_jsonutil.cpp @@ -69,6 +69,10 @@ std::map> BJsonUtil::Build HILOGI("Start BuildBundleInfos"); for (size_t i = 0; i < bundleNames.size(); i++) { std::string bundleName = bundleNames[i]; + if (bundleName.empty()) { + HILOGE("BundleName is invalid"); + continue; + } std::vector bundleDetailInfos; size_t pos = bundleName.find(BUNDLE_INDEX_SPLICE); if (pos == 0 || pos == (bundleName.size() - 1)) { -- Gitee