From bb579731e9ecb41e21d5851e88500928bd57d0c0 Mon Sep 17 00:00:00 2001 From: zhenghui Date: Wed, 28 Aug 2024 17:14:01 +0800 Subject: [PATCH] =?UTF-8?q?LocalCodeSignClient=E5=A2=9E=E5=8A=A0=E6=9E=90?= =?UTF-8?q?=E6=9E=84=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: zhenghui --- .../local_code_sign/include/local_code_sign_client.h | 2 +- .../local_code_sign/src/local_code_sign_client.cpp | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/interfaces/innerkits/local_code_sign/include/local_code_sign_client.h b/interfaces/innerkits/local_code_sign/include/local_code_sign_client.h index a20e609..b5552e0 100644 --- a/interfaces/innerkits/local_code_sign/include/local_code_sign_client.h +++ b/interfaces/innerkits/local_code_sign/include/local_code_sign_client.h @@ -49,7 +49,7 @@ private: }; LocalCodeSignClient(); - ~LocalCodeSignClient() = default; + ~LocalCodeSignClient(); LocalCodeSignClient(const LocalCodeSignClient &source) = delete; LocalCodeSignClient &operator = (const LocalCodeSignClient &source) = delete; diff --git a/interfaces/innerkits/local_code_sign/src/local_code_sign_client.cpp b/interfaces/innerkits/local_code_sign/src/local_code_sign_client.cpp index 10abb5b..b599ece 100644 --- a/interfaces/innerkits/local_code_sign/src/local_code_sign_client.cpp +++ b/interfaces/innerkits/local_code_sign/src/local_code_sign_client.cpp @@ -36,6 +36,15 @@ LocalCodeSignClient::LocalCodeSignClient() } } +LocalCodeSignClient::~LocalCodeSignClient() +{ + std::lock_guard lock(proxyMutex_); + if (localCodeSignProxy_ != nullptr && localCodeSignSvrRecipient_ != nullptr) { + localCodeSignProxy_->AsObject()->RemoveDeathRecipient(localCodeSignSvrRecipient_); + } + localCodeSignSvrRecipient_ = nullptr; +} + void LocalCodeSignClient::LocalCodeSignSvrRecipient::OnRemoteDied(const wptr &remote) { if (remote == nullptr) { -- Gitee