New issue
Advanced search Search tips

Issue 903671 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Nov 9
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug



Sign in to add a comment

ArcWindowDelegateImpl::IsInArcAppWindow crashes at login

Project Member Reported by yhanada@chromium.org, Nov 9

Issue description

According to Xiyuan's comment in crrev.com/c/1291289
exo::WMHelper::GetInstance() can be null in ArcWindowDelegateImpl::IsInArcAppWindow.

(gdb) bt
#0  0x00005ea11f0a5ba6 in arc::(anonymous namespace)::ArcWindowDelegateImpl::IsInArcAppWindow(aura::Window const*) const () at ../../components/arc/ime/arc_ime_service.cc:56
#1  0x00005ea11f0a4172 in arc::ArcImeService::OnWindowFocused(aura::Window*, aura::Window*) () at ../../components/arc/ime/arc_ime_service.cc:241
#2  0x00005ea120666b30 in wm::FocusController::SetFocusedWindow(aura::Window*) () at ../../ui/wm/core/focus_controller.cc:259
#3  0x00005ea12066679e in wm::FocusController::FocusAndActivateWindow(wm::ActivationChangeObserver::ActivationReason, aura::Window*) () at ../../ui/wm/core/focus_controller.cc:228
#4  0x00005ea11ee34a57 in ash::Shell::~Shell() () at ../../ash/shell.cc:720
#5  0x00005ea11ee3690e in ash::Shell::~Shell() () at ../../ash/shell.cc:705
#6  0x00005ea11f20c28d in ChromeBrowserMainExtraPartsAsh::PostMainMessageLoopRun() ()
    at ../../../../../../../../../usr/local/google/home/xiyuan/src/cros/.cache/chrome-sdk/tarballs/samus+11079.0.0+target_toolchain/usr/bin/../include/c++/v1/memory:2321
#7  0x00005ea11c7c6c6a in ChromeBrowserMainParts::PostMainMessageLoopRun() () at ../../chrome/browser/chrome_browser_main.cc:1934
#8  0x00005ea11b91db1f in chromeos::ChromeBrowserMainPartsChromeos::PostMainMessageLoopRun() () at ../../chrome/browser/chromeos/chrome_browser_main_chromeos.cc:1130
#9  0x00005ea11aec363e in content::BrowserMainLoop::ShutdownThreadsAndCleanUp() () at ../../content/browser/browser_main_loop.cc:1026
...
 
Cc: sky@chromium.org thakis@chromium.org kinaba@chromium.org
Labels: -Pri-3 Pri-1
Status: Available (was: Untriaged)
Summary: ArcWindowDelegateImpl::IsInArcAppWindow crashes at login (was: ArcWindowDelegateImpl::IsInArcAppWindow crashes sometimes.)
I'm seeing this crash on every login. Full stack:

#0  0x00005b82f71b9a86 in arc::(anonymous namespace)::ArcWindowDelegateImpl::IsInArcAppWindow(aura::Window const*) const () at ../../components/arc/ime/arc_ime_service.cc:56
#1  0x00005b82f71b8052 in arc::ArcImeService::OnWindowFocused(aura::Window*, aura::Window*) () at ../../components/arc/ime/arc_ime_service.cc:241
#2  0x00005b82f874ab50 in wm::FocusController::SetFocusedWindow(aura::Window*) () at ../../ui/wm/core/focus_controller.cc:259
#3  0x00005b82f874a7be in wm::FocusController::FocusAndActivateWindow(wm::ActivationChangeObserver::ActivationReason, aura::Window*) () at ../../ui/wm/core/focus_controller.cc:228
#4  0x00005b82f6f4aeb4 in ash::Shell::~Shell() () at ../../ash/shell.cc:720
#5  0x00005b82f6f4ce2e in ash::Shell::~Shell() () at ../../ash/shell.cc:705
#6  0x00005b82f7321c9d in ChromeBrowserMainExtraPartsAsh::PostMainMessageLoopRun() () at ../../build/cros_cache/chrome-sdk/tarballs/eve+11235.0.0+target_toolchain/usr/bin/../include/c++/v1/memory:2321
#7  0x00005b82f49ec9da in ChromeBrowserMainParts::PostMainMessageLoopRun() () at ../../chrome/browser/chrome_browser_main.cc:1934
#8  0x00005b82f3b451c6 in chromeos::ChromeBrowserMainPartsChromeos::PostMainMessageLoopRun() () at ../../chrome/browser/chromeos/chrome_browser_main_chromeos.cc:1135
#9  0x00005b82f30df9ce in content::BrowserMainLoop::ShutdownThreadsAndCleanUp() () at ../../content/browser/browser_main_loop.cc:1026
#10 0x00005b82f30e20ad in content::BrowserMainRunnerImpl::Shutdown() () at ../../content/browser/browser_main_runner_impl.cc:221
#11 0x00005b82f30dbfa4 in content::BrowserMain(content::MainFunctionParams const&) () at ../../content/browser/browser_main.cc:49
#12 0x00005b82f49dec98 in content::ContentMainRunnerImpl::Run(bool) () at ../../content/app/content_main_runner_impl.cc:537
#13 0x00005b82f49e533d in service_manager::Main(service_manager::MainParams const&) () at ../../services/service_manager/embedder/main.cc:472
#14 0x00005b82f49dcec1 in content::ContentMain(content::ContentMainParams const&) () at ../../content/app/content_main.cc:19
#15 0x00005b82f23a8b3f in ChromeMain () at ../../chrome/app/chrome_main.cc:102
#16 0x00007aed92797736 in __libc_start_main (main=0x5b82f23a8aa0 <main>, argc=31, argv=0x7fffceea33a8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffceea3398) at ../csu/libc-start.c:289
#17 0x00005b82f23a8969 in _start ()

Status: Fixed (was: Available)
I reverted the patch.
Scott, the offending CL had been merged to M71 ( crbug.com/891825#c34 ). Did you revert it there too?
I did not revert the patch in M71. I didn't realize the patch was merged. Will see about doing a revert there too. I haven't reverted on a branch before, so I don't know if the process is any different.
Project Member

Comment 6 by bugdroid1@chromium.org, Nov 20

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/5d576e9a44fe4c5b6a07e568f1ebc753f1214634

commit 5d576e9a44fe4c5b6a07e568f1ebc753f1214634
Author: Yuichiro Hanada <yhanada@chromium.org>
Date: Tue Nov 20 01:35:25 2018

Reland: Fix text input on ARC++ Kiosk apps.

The original CL is crrev.com/c/1291289. It was reverted due to crash.
Please see  crbug.com/903671 .

We changed IsInArcAppWindow() to use the window property,
aura::client::kAppType, but it's not set for ARC++ Kiosk apps' window.
It makes text input on ARC++ Kiosk apps stop working.
This CL adds a temporary workaround for this situation. Ideally,
IsArcAppWindow() in arc_util.cc should handle windows of ARC++ Kiosk app
correctly.

Bug:  891825 ,  903671 
Test: Can type text on Wikipedia kiosk app.
Change-Id: I3e6457ee3dc5f3fdcca35a7acbb007325697ddbd
Reviewed-on: https://chromium-review.googlesource.com/c/1339779
Reviewed-by: Yusuke Sato <yusukes@chromium.org>
Commit-Queue: Yuichiro Hanada <yhanada@chromium.org>
Cr-Commit-Position: refs/heads/master@{#609551}
[modify] https://crrev.com/5d576e9a44fe4c5b6a07e568f1ebc753f1214634/components/arc/ime/arc_ime_service.cc

Labels: Merge-Merged-71-3578
The following revision refers to this bug: 
https://chromium.googlesource.com/chromium/src.git/+/9f3cc28b53360f25187d30e9908d92d7d8abdd5c

Commit: 9f3cc28b53360f25187d30e9908d92d7d8abdd5c
Author: yhanada@chromium.org
Commiter: yhanada@chromium.org
Date: 2018-11-27 23:58:28 +0000 UTC

Reland: Fix text input on ARC++ Kiosk apps.

The original CL is crrev.com/c/1291289. It was reverted due to crash.
Please see  crbug.com/903671 .

We changed IsInArcAppWindow() to use the window property,
aura::client::kAppType, but it's not set for ARC++ Kiosk apps' window.
It makes text input on ARC++ Kiosk apps stop working.
This CL adds a temporary workaround for this situation. Ideally,
IsArcAppWindow() in arc_util.cc should handle windows of ARC++ Kiosk app
correctly.

Bug:  891825 ,  903671 
Test: Can type text on Wikipedia kiosk app.
Change-Id: I3e6457ee3dc5f3fdcca35a7acbb007325697ddbd
Reviewed-on: https://chromium-review.googlesource.com/c/1339779
Reviewed-by: Yusuke Sato <yusukes@chromium.org>
Commit-Queue: Yuichiro Hanada <yhanada@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#609551}(cherry picked from commit 5d576e9a44fe4c5b6a07e568f1ebc753f1214634)
Reviewed-on: https://chromium-review.googlesource.com/c/1352079
Reviewed-by: Yuichiro Hanada <yhanada@chromium.org>
Cr-Commit-Position: refs/branch-heads/3578@{#834}
Cr-Branched-From: 4226ddf99103e493d7afb23a4c7902ee496108b6-refs/heads/master@{#599034}
Project Member

Comment 8 by bugdroid1@chromium.org, Nov 28

Labels: merge-merged-3578
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9f3cc28b53360f25187d30e9908d92d7d8abdd5c

commit 9f3cc28b53360f25187d30e9908d92d7d8abdd5c
Author: Yuichiro Hanada <yhanada@chromium.org>
Date: Tue Nov 27 23:58:28 2018

Reland: Fix text input on ARC++ Kiosk apps.

The original CL is crrev.com/c/1291289. It was reverted due to crash.
Please see  crbug.com/903671 .

We changed IsInArcAppWindow() to use the window property,
aura::client::kAppType, but it's not set for ARC++ Kiosk apps' window.
It makes text input on ARC++ Kiosk apps stop working.
This CL adds a temporary workaround for this situation. Ideally,
IsArcAppWindow() in arc_util.cc should handle windows of ARC++ Kiosk app
correctly.

Bug:  891825 ,  903671 
Test: Can type text on Wikipedia kiosk app.
Change-Id: I3e6457ee3dc5f3fdcca35a7acbb007325697ddbd
Reviewed-on: https://chromium-review.googlesource.com/c/1339779
Reviewed-by: Yusuke Sato <yusukes@chromium.org>
Commit-Queue: Yuichiro Hanada <yhanada@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#609551}(cherry picked from commit 5d576e9a44fe4c5b6a07e568f1ebc753f1214634)
Reviewed-on: https://chromium-review.googlesource.com/c/1352079
Reviewed-by: Yuichiro Hanada <yhanada@chromium.org>
Cr-Commit-Position: refs/branch-heads/3578@{#834}
Cr-Branched-From: 4226ddf99103e493d7afb23a4c7902ee496108b6-refs/heads/master@{#599034}
[modify] https://crrev.com/9f3cc28b53360f25187d30e9908d92d7d8abdd5c/components/arc/ime/arc_ime_service.cc

Owner: yhanada@chromium.org

Sign in to add a comment