From 05f247ab19318510079a34e2bc0352beb48745cc Mon Sep 17 00:00:00 2001 From: huaqingsimeng Date: Sun, 29 Oct 2023 11:27:05 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=87=E4=BB=BD=E6=81=A2=E5=A4=8D=E5=AE=8C?= =?UTF-8?q?=E5=96=84=E5=BC=82=E5=B8=B8=E9=94=99=E8=AF=AF=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: huaqingsimeng --- frameworks/native/backup_ext/src/ext_backup_js.cpp | 14 ++++++++++++-- frameworks/native/backup_ext/src/ext_extension.cpp | 1 + utils/src/b_tarball/b_tarball_cmdline.cpp | 11 +++++++++-- 3 files changed, 22 insertions(+), 4 deletions(-) diff --git a/frameworks/native/backup_ext/src/ext_backup_js.cpp b/frameworks/native/backup_ext/src/ext_backup_js.cpp index ad919e7a9..5f5982a0d 100644 --- a/frameworks/native/backup_ext/src/ext_backup_js.cpp +++ b/frameworks/native/backup_ext/src/ext_backup_js.cpp @@ -248,7 +248,12 @@ ErrCode ExtBackupJs::OnBackup(function callback) return true; } HILOGI("CheckPromise(JS) OnBackup ok."); - return CallPromise(*jsRuntime, result, callbackInfo.get()); + auto ret = CallPromise(*jsRuntime, result, callbackInfo.get()); + if (!ret) { + HILOGE("CallPromise(JS) OnBackup fail."); + callbackInfo->callback(); + } + return ret; }; auto errCode = CallJsMethod("onBackup", jsRuntime_, jsObj_.get(), {}, retParser); @@ -281,7 +286,12 @@ ErrCode ExtBackupJs::OnRestore(function callback) return true; } HILOGI("CheckPromise(JS) OnRestore ok."); - return CallPromise(*jsRuntime, result, callbackInfo.get()); + auto ret = CallPromise(*jsRuntime, result, callbackInfo.get()); + if (!ret) { + HILOGE("CallPromise(JS) OnRestore fail."); + callbackInfo->callback(); + } + return ret; }; auto errCode = CallJsMethod("onRestore", jsRuntime_, jsObj_.get(), argParser, retParser); diff --git a/frameworks/native/backup_ext/src/ext_extension.cpp b/frameworks/native/backup_ext/src/ext_extension.cpp index 10feae97b..338963a15 100644 --- a/frameworks/native/backup_ext/src/ext_extension.cpp +++ b/frameworks/native/backup_ext/src/ext_extension.cpp @@ -289,6 +289,7 @@ int BackupExtExtension::DoBackup(const BJsonEntityExtensionConfig &usrConfig) auto proxy = ServiceProxy::GetInstance(); if (proxy == nullptr) { + HILOGE("Failed to obtain the ServiceProxy handle"); throw BError(BError::Codes::EXT_BROKEN_BACKUP_SA, std::generic_category().message(errno)); } diff --git a/utils/src/b_tarball/b_tarball_cmdline.cpp b/utils/src/b_tarball/b_tarball_cmdline.cpp index bb286faf1..ffbfcff9a 100644 --- a/utils/src/b_tarball/b_tarball_cmdline.cpp +++ b/utils/src/b_tarball/b_tarball_cmdline.cpp @@ -47,8 +47,15 @@ static void VerifyArgv(const vector &argv) static bool IsTarFatalErrorOccur(string_view output) { - vector fatalError {"EOF", "bad xform", "bad header", "sparse overflow", - "short header", "empty archive", "Not tar"}; + vector fatalError {"EOF", + "bad xform", + "bad header", + "sparse overflow", + "short header", + "empty archive", + "Not tar", + "Operation not permitted", + "Permission denied"}; for (auto &item : fatalError) { if (output.find(item) != string_view::npos) { return true; -- Gitee