[M130] Fix for hang/crash at ewk webview launch 35/318335/3
authorChandan Padhi <c.padhi@samsung.com>
Wed, 15 Jan 2025 16:11:22 +0000 (21:41 +0530)
committerChandan Padhi <c.padhi@samsung.com>
Tue, 21 Jan 2025 14:14:15 +0000 (19:44 +0530)
This commit fixes hang/crash issues at efl_webview_app/ubrowser launch.

Change-Id: I69f64a24ef30e9112766406482c26ec96a618b9b
Signed-off-by: Chandan Padhi <c.padhi@samsung.com>
tizen_src/build/config/tizen_features.gni
tizen_src/ewk/efl_integration/browser/navigation_throttle_efl.cc
tizen_src/ewk/efl_integration/ewk_global_data.cc

index e90a5c9fe3d8bff0bbee8c9ebe06e515132df634..e7fbeab14cfc9c8914be26ed8a7048ad921eec34 100644 (file)
@@ -49,6 +49,7 @@ declare_args() {
   tizen_version_minor = 0
   tizen_version_patch = 0
 
+  ewk_bringup = true
   build_chrome = false
   enable_ewk_interface = false
   platform_api_wrapper = false
@@ -83,7 +84,8 @@ declare_args() {
   tizen_tv_riscv64 = false
 }
 
-if (use_efl) {
+# Enable autofill after fixing related crash.
+if (!ewk_bringup) {  #  FIXME: m130 bringup
   tizen_autofill = true
   if (tizen_product_tv) {
     tizen_autofill_fw = true
@@ -123,7 +125,6 @@ werror = false
 
 use_gstreamer_fft = false
 
-ewk_bringup = true
 wayland_bringup = use_wayland
 
 compile_suid_client = true
index b441bd8fcb12cfb6d54ac96d1a114c62720affd3..fe47c81603c1382cb07b7323eb85b0e3a63a2497 100644 (file)
@@ -160,10 +160,14 @@ NavigationPolicyParams NavigationThrottleEfl::GetNavigationPolicyParams(
       handle->GetPageTransition(), handle->GetReloadType() != ReloadType::NONE);
   std::optional<std::string> auth = handle->GetRequestHeaders().GetHeader(
       net::HttpRequestHeaders::kAuthorization);
-  params.auth = blink::WebString::FromUTF8(auth.value());
+  if (auth) {
+    params.auth = blink::WebString::FromUTF8(auth.value());
+  }
   std::optional<std::string> cookie =
       handle->GetRequestHeaders().GetHeader(net::HttpRequestHeaders::kCookie);
-  params.cookie = cookie.value();
+  if (cookie) {
+    params.cookie = cookie.value();
+  }
   params.should_replace_current_entry = handle->DidReplaceEntry();
   params.is_main_frame = handle->IsInMainFrame();
   params.is_redirect = is_redirect;
index 543e9177ca1940041a013231d821c7c45b3da516..6fb46e470512798a8f6faabea81f30407d50ac99 100644 (file)
@@ -161,7 +161,6 @@ EwkGlobalData* EwkGlobalData::GetInstance() {
   content::InitializeFieldTrialAndFeatureList();
 
   // Start ThreadPool before creating BrowserMainLoop.
-  base::ThreadPoolInstance::Create("Browser");
   content::StartBrowserThreadPool();
   content::BrowserTaskExecutor::Create();