From 69bc2bb4b35516e25842da6dae6b351837473268 Mon Sep 17 00:00:00 2001 From: zhangzezhong Date: Wed, 13 Aug 2025 10:18:02 +0800 Subject: [PATCH] fix application bug Signed-off-by: zhangzezhong --- .../ani/application/src/ets_application.cpp | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/frameworks/ets/ani/application/src/ets_application.cpp b/frameworks/ets/ani/application/src/ets_application.cpp index e395fac644c..4d68d1ff724 100644 --- a/frameworks/ets/ani/application/src/ets_application.cpp +++ b/frameworks/ets/ani/application/src/ets_application.cpp @@ -249,16 +249,22 @@ ani_object EtsApplication::GetApplicationContext(ani_env *env) TAG_LOGD(AAFwkTag::APPKIT, "GetApplicationContext Call"); if (env == nullptr) { TAG_LOGE(AAFwkTag::APPKIT, "null env"); - return {}; + return nullptr; } auto etsReference = AbilityRuntime::ApplicationContextManager::GetApplicationContextManager().GetEtsGlobalObject(); if (etsReference == nullptr || etsReference->aniRef == nullptr) { - TAG_LOGE(AAFwkTag::APPKIT, "null applicationContextObject"); - AbilityRuntime::EtsErrorUtil::ThrowError(env, AbilityRuntime::AbilityErrorCode::ERROR_CODE_INNER); - ani_ref result = nullptr; - env->GetNull(&result); - return static_cast(result); + auto applicationContext = ApplicationContext::GetInstance(); + ani_object applicationContextObject = + EtsApplicationContextUtils::CreateEtsApplicationContext(env, applicationContext); + if (applicationContextObject == nullptr) { + TAG_LOGE(AAFwkTag::APPKIT, "null applicationContextObject"); + AbilityRuntime::EtsErrorUtil::ThrowError(env, AbilityRuntime::AbilityErrorCode::ERROR_CODE_INNER); + ani_ref result = nullptr; + env->GetNull(&result); + return static_cast(result); + } + return applicationContextObject; } return reinterpret_cast(etsReference->aniRef); } -- Gitee