From 56b4b81d13857982d1a0f4f2d6dc69fd4d2922c8 Mon Sep 17 00:00:00 2001 From: wangzezhen Date: Wed, 22 Mar 2023 08:43:29 +0000 Subject: [PATCH] fixed 765a05b from https://gitee.com/wzztoone/arkui_ace_engine/pulls/11293 fix router Signed-off-by: wangzezhen Change-Id: I047cf1df4bd9a5b734edf4146b5937ff895a02cf --- adapter/ohos/osal/page_url_checker_ohos.cpp | 9 +++++---- .../declarative_frontend/ng/page_router_manager.cpp | 6 ++++++ 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/adapter/ohos/osal/page_url_checker_ohos.cpp b/adapter/ohos/osal/page_url_checker_ohos.cpp index 88518bf0eab..69c9027beb0 100644 --- a/adapter/ohos/osal/page_url_checker_ohos.cpp +++ b/adapter/ohos/osal/page_url_checker_ohos.cpp @@ -203,10 +203,11 @@ void PageUrlCheckerOhos::LoadPageUrl(const std::string& url, const std::function if (appInfo) { std::vector moduleList = appInfo->moduleInfos; bool isInstalled = false; - for (const auto& module : moduleList) { - if (module.moduleName == moduleName) { - isInstalled = true; - } + auto res = std::any_of(moduleList.begin(), moduleList.end(), [moduleName](const auto &module) { + return module.moduleName == moduleName; + }); + if (res) { + isInstalled = true; } if (!isInstalled) { diff --git a/frameworks/bridge/declarative_frontend/ng/page_router_manager.cpp b/frameworks/bridge/declarative_frontend/ng/page_router_manager.cpp index 1a7f2d2c040..35c9d1608d9 100644 --- a/frameworks/bridge/declarative_frontend/ng/page_router_manager.cpp +++ b/frameworks/bridge/declarative_frontend/ng/page_router_manager.cpp @@ -415,6 +415,9 @@ void PageRouterManager::PushOhmUrl(const RouterPageInfo& target, const std::stri { if (GetStackSize() >= MAX_ROUTER_STACK_SIZE) { LOGE("router stack size is larger than max size 32."); + if (errorCallback != nullptr) { + errorCallback("The pages are pushed too much.", Framework::ERROR_CODE_PAGE_STACK_FULL); + } return; } std::string url = target.url; @@ -487,6 +490,9 @@ void PageRouterManager::StartPush(const RouterPageInfo& target, const std::strin } if (GetStackSize() >= MAX_ROUTER_STACK_SIZE) { LOGE("router stack size is larger than max size 32."); + if (errorCallback != nullptr) { + errorCallback("The pages are pushed too much.", Framework::ERROR_CODE_PAGE_STACK_FULL); + } return; } std::string url = target.url; -- Gitee