Commit 1b11ca42 authored by Aga Wronska's avatar Aga Wronska Committed by Commit Bot

Fix null dereference in shelf views

Tablet mode controller is destroyed slightly before shelf widget in
Shell destructor. Nullptr check is needed, because IsTabletModeEnabled()
can get called when shelf is being destroyed.

Bug: 967149
Change-Id: I42b6abd6cf24902cc1647d03dd813b070d9aec05
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1637982Reviewed-by: default avatarXiyuan Xia <xiyuan@chromium.org>
Commit-Queue: Aga Wronska <agawronska@chromium.org>
Cr-Commit-Position: refs/heads/master@{#665126}
parent f06b81d4
...@@ -21,9 +21,12 @@ namespace ash { ...@@ -21,9 +21,12 @@ namespace ash {
namespace { namespace {
bool IsTabletModeEnabled() { bool IsTabletModeEnabled() {
return Shell::Get() // This check is needed, because tablet mode controller is destroyed before
->tablet_mode_controller() // shelf widget. See https://crbug.com/967149 for more details.
->IsTabletModeWindowManagerEnabled(); return Shell::Get()->tablet_mode_controller() &&
Shell::Get()
->tablet_mode_controller()
->IsTabletModeWindowManagerEnabled();
} }
} // namespace } // namespace
......
...@@ -90,9 +90,12 @@ class KioskNextHomeButton : public AppListButton { ...@@ -90,9 +90,12 @@ class KioskNextHomeButton : public AppListButton {
}; };
bool IsTabletModeEnabled() { bool IsTabletModeEnabled() {
return Shell::Get() // This check is needed, because tablet mode controller is destroyed before
->tablet_mode_controller() // shelf widget. See https://crbug.com/967149 for more details.
->IsTabletModeWindowManagerEnabled(); return Shell::Get()->tablet_mode_controller() &&
Shell::Get()
->tablet_mode_controller()
->IsTabletModeWindowManagerEnabled();
} }
} // namespace } // namespace
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment