[M120 Migration]Fix IMContextEfl crash issue during app exit 90/307390/3
authorfangfengrong <fr.fang@samsung.com>
Fri, 8 Mar 2024 03:46:16 +0000 (11:46 +0800)
committerYanqing Lu <yanqing.lu@samsung.com>
Tue, 12 Mar 2024 01:16:06 +0000 (01:16 +0000)
During App exit, the RWHVAuraCommonHelperEfl destruction before the
IMContextEfl, after RWHVAuraCommonHelperEfl destruction, the rwh_helper_
of IMContextEfl been a wild pointers, once IMContextEfl use the rwh_helper_
wild pointers, it will cause crash.

On RWHVAuraCommonHelperEfl destruction, set the rwh_helper_ of IMContextEfl
to null to avoid crash.

refer:
https://review.tizen.org/gerrit/#/c/295867

Change-Id: Ife433c18d98ff0d4b39f310fafed89d03ee410ab
Signed-off-by: fangfengrong <fr.fang@samsung.com>
tizen_src/chromium_impl/content/browser/renderer_host/rwhv_aura_common_helper_efl.cc

index 84bf010..36f208c 100644 (file)
@@ -167,7 +167,11 @@ RWHVAuraCommonHelperEfl::RWHVAuraCommonHelperEfl(
       display::Screen::GetScreen()->GetPrimaryDisplay().device_scale_factor();
 }
 
-RWHVAuraCommonHelperEfl::~RWHVAuraCommonHelperEfl() = default;
+RWHVAuraCommonHelperEfl::~RWHVAuraCommonHelperEfl() {
+  if (im_context_efl_)
+    im_context_efl_->SetRWHHelper(nullptr);
+  rwh_helper_.reset();
+}
 
 void RWHVAuraCommonHelperEfl::DidChangeInputType(bool is_password_field) {
   web_contents_->GetDelegate()->DidChangeInputType(is_password_field);