From ae253ed3bdffb8ac0b21d04daa8a9cf7bfa527ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=90=95=E6=8C=AF=E6=9D=B0?= Date: Sat, 2 Aug 2025 09:25:00 +0800 Subject: [PATCH 1/2] add jsoncpp dep MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 吕振杰 --- services/backup_sa/include/module_ipc/svc_backup_connection.h | 2 +- test/fuzztest/backupsa_fuzzer/BUILD.gn | 1 + test/fuzztest/backupservicestub_fuzzer/BUILD.gn | 1 + utils/include/b_filesystem/b_file.h | 1 - 4 files changed, 3 insertions(+), 2 deletions(-) diff --git a/services/backup_sa/include/module_ipc/svc_backup_connection.h b/services/backup_sa/include/module_ipc/svc_backup_connection.h index 786c01f4d..305a40b99 100644 --- a/services/backup_sa/include/module_ipc/svc_backup_connection.h +++ b/services/backup_sa/include/module_ipc/svc_backup_connection.h @@ -92,7 +92,7 @@ public: uint32_t GetConnectSpan() { return connectSpend_.GetSpan(); } - BError GetError() { return error_; } + BError& GetError() { return error_; } public: SvcBackupConnection(std::function callDied, std::function callConnected, diff --git a/test/fuzztest/backupsa_fuzzer/BUILD.gn b/test/fuzztest/backupsa_fuzzer/BUILD.gn index bce672d81..282f30037 100644 --- a/test/fuzztest/backupsa_fuzzer/BUILD.gn +++ b/test/fuzztest/backupsa_fuzzer/BUILD.gn @@ -50,6 +50,7 @@ ohos_fuzztest("BackupSaFuzzTest") { "file_api:filemgmt_libn", "hilog:libhilog", "ipc:ipc_core", + "jsoncpp:jsoncpp", "safwk:system_ability_fwk", ] diff --git a/test/fuzztest/backupservicestub_fuzzer/BUILD.gn b/test/fuzztest/backupservicestub_fuzzer/BUILD.gn index c4d813425..4c99886f0 100644 --- a/test/fuzztest/backupservicestub_fuzzer/BUILD.gn +++ b/test/fuzztest/backupservicestub_fuzzer/BUILD.gn @@ -52,6 +52,7 @@ ohos_fuzztest("BackupServiceStubFuzzTest") { "c_utils:utils", "hilog:libhilog", "ipc:ipc_core", + "jsoncpp:jsoncpp", "safwk:system_ability_fwk", ] diff --git a/utils/include/b_filesystem/b_file.h b/utils/include/b_filesystem/b_file.h index 2206bd422..27fe5ce36 100644 --- a/utils/include/b_filesystem/b_file.h +++ b/utils/include/b_filesystem/b_file.h @@ -20,7 +20,6 @@ #include #include "unique_fd.h" -#include "json/json.h" #include "b_anony/b_anony.h" -- Gitee From 895a01b2c88201534e1c4adb8a86b53fc23fbbf7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=90=95=E6=8C=AF=E6=9D=B0?= Date: Wed, 6 Aug 2025 14:49:19 +0800 Subject: [PATCH 2/2] fix curScenario MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 吕振杰 --- frameworks/native/backup_ext/src/ext_extension.cpp | 6 +++--- frameworks/native/backup_ext/src/sub_ext_extension.cpp | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/frameworks/native/backup_ext/src/ext_extension.cpp b/frameworks/native/backup_ext/src/ext_extension.cpp index ec7f43d14..5adbcae64 100644 --- a/frameworks/native/backup_ext/src/ext_extension.cpp +++ b/frameworks/native/backup_ext/src/ext_extension.cpp @@ -560,6 +560,7 @@ ErrCode BackupExtExtension::PublishFile(const std::string &fileName) VerifyCaller(); // 异步执行解压操作 if (extension_->AllowToBackupRestore()) { + curScenario_ = BackupRestoreScenario::FULL_RESTORE; AsyncTaskRestore(GetIdxFileData(bundleName_), GetExtManageInfo()); } HILOGI("End publish file"); @@ -597,6 +598,7 @@ ErrCode BackupExtExtension::PublishIncrementalFile(const string &fileName) isDebug_ = true; } if (extension_->AllowToBackupRestore()) { + curScenario_ = BackupRestoreScenario::INCREMENTAL_RESTORE; if (extension_->SpecialVersionForCloneAndCloud()) { HILOGI("Create task for Incremental SpecialVersion"); AsyncTaskIncreRestoreSpecialVersion(); @@ -629,6 +631,7 @@ ErrCode BackupExtExtension::HandleBackup(bool isClearData) return BError(BError::Codes::EXT_FORBID_BACKUP_RESTORE, "Application does not allow backup or restore") .GetCode(); } + curScenario_ = BackupRestoreScenario::FULL_BACKUP; AsyncTaskOnBackup(); return ERR_OK; } @@ -1684,7 +1687,6 @@ void BackupExtExtension::AsyncTaskRestoreForUpgrade() return; } HILOGI("On restore, start ext timer end."); - ptr->curScenario_ = BackupRestoreScenario::FULL_RESTORE; if ((ptr->StartOnProcessTaskThread(obj, BackupRestoreScenario::FULL_RESTORE)) != ERR_OK) { HILOGE("Call onProcess result is timeout"); return; @@ -1740,7 +1742,6 @@ void BackupExtExtension::AsyncTaskIncrementalRestoreForUpgrade() return; } HILOGI("On incrementalRestore, start ext timer end."); - ptr->curScenario_ = BackupRestoreScenario::INCREMENTAL_RESTORE; if ((ptr->StartOnProcessTaskThread(obj, BackupRestoreScenario::INCREMENTAL_RESTORE)) != ERR_OK) { HILOGE("Call onProcess result is timeout"); return; @@ -1947,7 +1948,6 @@ void BackupExtExtension::AsyncTaskOnBackup() BExcepUltils::BAssert(ptr, BError::Codes::EXT_BROKEN_FRAMEWORK, "Ext extension handle have been released"); BExcepUltils::BAssert(ptr->extension_, BError::Codes::EXT_INVAL_ARG, "Extension handle have been released"); try { - ptr->curScenario_ = BackupRestoreScenario::FULL_BACKUP; if ((ptr->StartOnProcessTaskThread(obj, BackupRestoreScenario::FULL_BACKUP)) != ERR_OK) { HILOGE("Call onProcess result is timeout"); return; diff --git a/frameworks/native/backup_ext/src/sub_ext_extension.cpp b/frameworks/native/backup_ext/src/sub_ext_extension.cpp index fb11fea1b..b05dc211d 100644 --- a/frameworks/native/backup_ext/src/sub_ext_extension.cpp +++ b/frameworks/native/backup_ext/src/sub_ext_extension.cpp @@ -98,6 +98,7 @@ ErrCode BackupExtExtension::IncrementalOnBackup(bool isClearData) return BError(BError::Codes::EXT_FORBID_BACKUP_RESTORE, "Application does not allow backup or restore") .GetCode(); } + curScenario_ = BackupRestoreScenario::INCREMENTAL_BACKUP; AsyncTaskOnIncrementalBackup(); return ERR_OK; } @@ -1191,7 +1192,6 @@ void BackupExtExtension::AsyncTaskOnIncrementalBackup() BExcepUltils::BAssert(ptr, BError::Codes::EXT_BROKEN_FRAMEWORK, "Ext extension handle have been released"); BExcepUltils::BAssert(ptr->extension_, BError::Codes::EXT_INVAL_ARG, "Extension handle have been released"); try { - ptr->curScenario_ = BackupRestoreScenario::INCREMENTAL_BACKUP; if ((ptr->StartOnProcessTaskThread(obj, BackupRestoreScenario::INCREMENTAL_BACKUP)) != ERR_OK) { HILOGE("Call onProcess result is timeout"); return; -- Gitee