From a2aab0f22789f34683c4b14654340f8ebf438630 Mon Sep 17 00:00:00 2001 From: etkmao Date: Tue, 7 Jan 2025 10:20:39 +0800 Subject: [PATCH] fix(core): fix android scope null when init engine exception --- .../connector/driver/js/src/main/cpp/src/js_driver_jni.cc | 3 +++ .../java/com/tencent/mtt/hippy/HippyEngineManagerImpl.java | 1 + 2 files changed, 4 insertions(+) diff --git a/framework/android/connector/driver/js/src/main/cpp/src/js_driver_jni.cc b/framework/android/connector/driver/js/src/main/cpp/src/js_driver_jni.cc index 6f296734c58..68bb816106d 100644 --- a/framework/android/connector/driver/js/src/main/cpp/src/js_driver_jni.cc +++ b/framework/android/connector/driver/js/src/main/cpp/src/js_driver_jni.cc @@ -412,6 +412,9 @@ void DestroyJsDriver(__unused JNIEnv* j_env, scope_cv_map.erase(scope_id); } auto scope = GetScope(j_scope_id); + if (!scope) { + return; + } auto engine = scope->GetEngine().lock(); FOOTSTONE_CHECK(engine); { diff --git a/framework/android/src/main/java/com/tencent/mtt/hippy/HippyEngineManagerImpl.java b/framework/android/src/main/java/com/tencent/mtt/hippy/HippyEngineManagerImpl.java index 769a3cff1b1..a7885932767 100644 --- a/framework/android/src/main/java/com/tencent/mtt/hippy/HippyEngineManagerImpl.java +++ b/framework/android/src/main/java/com/tencent/mtt/hippy/HippyEngineManagerImpl.java @@ -720,6 +720,7 @@ private synchronized void restartEngineInBackground(boolean onReLoad) { try { mEngineContext = new HippyEngineContextImpl(domManager); } catch (RuntimeException e) { + mEngineContext = null; LogUtils.e(TAG, "new HippyEngineContextImpl(): " + e.getMessage()); notifyEngineInitialized(EngineInitStatus.STATUS_INIT_EXCEPTION, e); return;