!5405 fa模式,JsParticleAbility连接service时,可能触发disconnect崩溃

Merge pull request !5405 from wangzhen/master_fail_cb
This commit is contained in:
openharmony_ci
2023-05-17 08:24:05 +00:00
committed by Gitee
4 changed files with 9 additions and 7 deletions
@@ -106,11 +106,8 @@ private:
void JsFeatureAbility::Finalizer(NativeEngine *engine, void *data, void *hint)
{
HILOG_DEBUG("JsFeatureAbility::Finalizer is called");
auto pthis = std::unique_ptr<JsFeatureAbility>(static_cast<JsFeatureAbility*>(data));
if (pthis) {
pthis->RemoveAllCallbacksLocked();
}
HILOG_INFO("JsFeatureAbility::Finalizer is called");
std::unique_ptr<JsFeatureAbility>(static_cast<JsFeatureAbility*>(data));
}
NativeValue* JsFeatureAbilityInit(NativeEngine *engine, NativeValue *exports)
@@ -28,7 +28,7 @@ namespace AppExecFwk {
class JsNapiCommon {
public:
JsNapiCommon();
virtual ~JsNapiCommon() = default;
virtual ~JsNapiCommon();
struct JsPermissionOptions {
bool uidFlag = false;
@@ -3982,6 +3982,11 @@ napi_value NAPI_CancelBackgroundRunningCommon(napi_env env, napi_callback_info i
JsNapiCommon::JsNapiCommon() : ability_(nullptr)
{}
JsNapiCommon::~JsNapiCommon()
{
RemoveAllCallbacksLocked();
}
NativeValue* JsNapiCommon::JsConnectAbility(
NativeEngine &engine, NativeCallbackInfo &info, const AbilityType abilityType)
{
@@ -201,7 +201,7 @@ napi_value ParticleAbilityInit(napi_env env, napi_value exports)
void JsParticleAbility::Finalizer(NativeEngine *engine, void *data, void *hint)
{
HILOG_INFO("JsWantAgent::Finalizer is called");
HILOG_INFO("JsParticleAbility::Finalizer is called");
std::unique_ptr<JsParticleAbility>(static_cast<JsParticleAbility*>(data));
}