In WindowSelectorTest, simulate clicking AlwaysOnTop fullscreen window exit overview mode DCHECK fail. This is only fail in WindowSelectorTest.
1. Open a AlwaysOnTop fullscreen window and other browser windows.
2. Enter overview mode.
3. Click the AlwaysOnTop fullscreen window to exit overview mode.
4. DCHECK fail.
[109761:109761:0224/210747.768970:382924278343:FATAL:window.cc(893)] Check failed: child != target (0x612000063ac0 vs. 0x612000063ac0)
#0 0x0000005dc661 in __interceptor_backtrace /b/build/slave/linux_upload_clang/build/src/third_party/llvm/compiler-rt/lib/asan/../sanitizer_common/sanitizer_common_interceptors.inc:3957:13
#1 0x000005e7d3cc in base::debug::StackTrace::StackTrace(unsigned long) /out/asan/../../base/debug/stack_trace_posix.cc:808:41
#2 0x000005d165df in logging::LogMessage::~LogMessage() /out/asan/../../base/logging.cc:581:29
#3 0x0000076abb6e in aura::Window::StackChildRelativeTo(aura::Window*, aura::Window*, aura::Window::StackDirection) /out/asan/../../ui/aura/window.cc:893:3
#4 0x000005b7df65 in ash::wm::WindowState::DisableAlwaysOnTop(aura::Window*) /out/asan/../../ash/wm/window_state.cc:292:26
#5 0x000005ba0650 in ash::WorkspaceLayoutManager::UpdateAlwaysOnTop(aura::Window*) /out/asan/../../ash/wm/workspace/workspace_layout_manager.cc:406:21
#6 0x0000058e7854 in ash::Shell::NotifyFullscreenStateChanged(bool, aura::Window*) /out/asan/../../ash/shell.cc:579:14
#7 0x000005b9f921 in UpdateFullscreenState /out/asan/../../ash/wm/workspace/workspace_layout_manager.cc:392:19
#8 0x000005b9f921 in OnWindowActivated /out/asan/../../ash/wm/workspace/workspace_layout_manager.cc:272:0
#9 0x000005b9f921 in non-virtual thunk to ash::WorkspaceLayoutManager::OnWindowActivated(wm::ActivationChangeObserver::ActivationReason, aura::Window*, aura::Window*) /out/asan/../../ash/wm/workspace/workspace_layout_manager.cc:0:0
#10 0x000007bf8be1 in wm::FocusController::SetActiveWindow(wm::ActivationChangeObserver::ActivationReason, aura::Window*, aura::Window*) /out/asan/../../ui/wm/core/focus_controller.cc:329:14
#11 0x000007bf55bf in wm::FocusController::FocusAndActivateWindow(wm::ActivationChangeObserver::ActivationReason, aura::Window*) /out/asan/../../ui/wm/core/focus_controller.cc:215:5
#12 0x000007c0ecc5 in wm::ActivateWindow(aura::Window*) /out/asan/../../ui/wm/core/window_util.cc:62:49
#13 0x000005af6163 in ash::WindowSelector::SelectWindow(ash::WindowSelectorItem*) /out/asan/../../ash/wm/overview/window_selector.cc:473:31
#14 0x000005b07027 in ash::WindowSelectorItem::ButtonPressed(views::Button*, ui::Event const&) /out/asan/../../ash/wm/overview/window_selector_item.cc:871:23
#15 0x000007a3ebb4 in views::Button::OnMouseReleased(ui::MouseEvent const&) /out/asan/../../ui/views/controls/button/button.cc:231:9
#16 0x000005b0d782 in ash::(anonymous namespace)::ShieldButton::OnMouseReleased(ui::MouseEvent const&) /out/asan/../../ash/wm/overview/window_selector_item.cc:210:20
#17 0x000007a10abe in views::InkDropHostView::OnMouseEvent(ui::MouseEvent*) /out/asan/../../ui/views/animation/ink_drop_host_view.cc:273:9
#18 0x0000078574d2 in DispatchEvent /out/asan/../../ui/events/event_dispatcher.cc:191:12
#19 0x0000078574d2 in ui::EventDispatcher::ProcessEvent(ui::EventTarget*, ui::Event*) /out/asan/../../ui/events/event_dispatcher.cc:139:0
#20 0x000007856e72 in DispatchEventToTarget /out/asan/../../ui/events/event_dispatcher.cc:86:14
#21 0x000007856e72 in ui::EventDispatcherDelegate::DispatchEvent(ui::EventTarget*, ui::Event*) /out/asan/../../ui/events/event_dispatcher.cc:58:0
#22 0x000007b6269e in views::internal::RootView::OnMouseReleased(ui::MouseEvent const&) /out/asan/../../ui/views/widget/root_view.cc:442:9
#23 0x000007b78dbd in views::Widget::OnMouseEvent(ui::MouseEvent*) /out/asan/../../ui/views/widget/widget.cc:1220:20
#24 0x000007bbd99e in views::NativeWidgetAura::OnMouseEvent(ui::MouseEvent*) /out/asan/../../ui/views/widget/native_widget_aura.cc:0:14
#25 0x0000078574d2 in DispatchEvent /out/asan/../../ui/events/event_dispatcher.cc:191:12
#26 0x0000078574d2 in ui::EventDispatcher::ProcessEvent(ui::EventTarget*, ui::Event*) /out/asan/../../ui/events/event_dispatcher.cc:139:0
#27 0x000007856e72 in DispatchEventToTarget /out/asan/../../ui/events/event_dispatcher.cc:86:14
#28 0x000007856e72 in ui::EventDispatcherDelegate::DispatchEvent(ui::EventTarget*, ui::Event*) /out/asan/../../ui/events/event_dispatcher.cc:58:0
#29 0x00000785b573 in ui::EventProcessor::OnEventFromSource(ui::Event*) /out/asan/../../ui/events/event_processor.cc:57:17
#30 0x00000785c923 in DeliverEventToSink /out/asan/../../ui/events/event_source.cc:73:16
#31 0x00000785c923 in ui::EventSource::SendEventToSink(ui::Event*) /out/asan/../../ui/events/event_source.cc:51:0
#32 0x0000078b5e6f in ui::test::EventGenerator::DoDispatchEvent(ui::Event*, bool) /out/asan/../../ui/events/test/event_generator.cc:736:29
#33 0x0000078ad9c8 in Dispatch /out/asan/../../ui/events/test/event_generator.cc:623:3
#34 0x0000078ad9c8 in ui::test::EventGenerator::ReleaseButton(int) /out/asan/../../ui/events/test/event_generator.cc:697:0
#35 0x00000162de52 in ClickWindow /out/asan/../../ash/wm/overview/window_selector_unittest.cc:244:21
#36 0x00000162de52 in ash::WindowSelectorTest_HandleAlwaysOnTopWindow_Test::TestBody() /out/asan/../../ash/wm/overview/window_selector_unittest.cc:2409:0
#37 0x0000038ad61d in testing::Test::Run() /out/asan/../../third_party/googletest/src/googletest/src/gtest-internal-inl.h:0:10
#38 0x0000038af4f5 in testing::TestInfo::Run() /out/asan/../../third_party/googletest/src/googletest/src/gtest.cc:2645:11
#39 0x0000038b0857 in testing::TestCase::Run() /out/asan/../../third_party/googletest/src/googletest/src/gtest.cc:2763:28
#40 0x0000038c8ff7 in testing::internal::UnitTestImpl::RunAllTests() /out/asan/../../third_party/googletest/src/googletest/src/gtest.cc:4638:43
#41 0x0000038c8539 in testing::UnitTest::Run() /out/asan/../../third_party/googletest/src/googletest/src/gtest.cc:0:0
#42 0x000005efa2bc in RUN_ALL_TESTS /out/asan/../../third_party/googletest/src/googletest/include/gtest/gtest.h:2297:46
#43 0x000005efa2bc in base::TestSuite::Run() /out/asan/../../base/test/test_suite.cc:271:0
#44 0x000005effb49 in Run /out/asan/../../base/callback.h:124:12
#45 0x000005effb49 in base::(anonymous namespace)::LaunchUnitTestsInternal(base::RepeatingCallback<int ()> const&, unsigned long, int, bool, base::RepeatingCallback<void ()> const&) /out/asan/../../base/test/launcher/unit_test_launcher.cc:220:0
#46 0x000005eff641 in base::LaunchUnitTests(int, char**, base::RepeatingCallback<int ()> const&) /out/asan/../../base/test/launcher/unit_test_launcher.cc:558:10
#47 0x0000013d5c8d in main /out/asan/../../ash/test/ash_unittests.cc:14:10
#48 0x7f48330b42b1 in __libc_start_main ??:0:0
#49 0x000000590baa in _start ??:0:0
If click the other fullscreen window (not the AlwaysOnTop one), has different DCHECK fail:
[111271:111271:0224/211915.622192:383612131567:FATAL:focus_controller.cc(227)] Check failed: active_window_->Contains(focusable).
#0 0x0000005dc661 in __interceptor_backtrace /b/build/slave/linux_upload_clang/build/src/third_party/llvm/compiler-rt/lib/asan/../sanitizer_common/sanitizer_common_interceptors.inc:3957:13
#1 0x000005e7d24c in base::debug::StackTrace::StackTrace(unsigned long) /out/asan/../../base/debug/stack_trace_posix.cc:808:41
#2 0x000005d1645f in logging::LogMessage::~LogMessage() /out/asan/../../base/logging.cc:581:29
#3 0x000007bf55d8 in wm::FocusController::FocusAndActivateWindow(wm::ActivationChangeObserver::ActivationReason, aura::Window*) /out/asan/../../ui/wm/core/focus_controller.cc:227:9
#4 0x000007c0eb45 in wm::ActivateWindow(aura::Window*) /out/asan/../../ui/wm/core/window_util.cc:62:49
#5 0x000005af4297 in ResetFocusRestoreWindow /out/asan/../../ash/wm/overview/window_selector.cc:852:5
#6 0x000005af4297 in ash::WindowSelector::Shutdown() /out/asan/../../ash/wm/overview/window_selector.cc:365:0
#7 0x000005affb77 in ash::WindowSelectorController::OnSelectionEnded() /out/asan/../../ash/wm/overview/window_selector_controller.cc:261:21
#8 0x0000076b3190 in aura::Window::NotifyWindowHierarchyChangeAtReceiver(aura::WindowObserver::HierarchyChangeParams const&) /out/asan/../../ui/aura/window.cc:1007:18
#9 0x0000076acf4f in NotifyWindowHierarchyChangeUp /out/asan/../../ui/aura/window.cc:992:13
#10 0x0000076acf4f in NotifyWindowHierarchyChange /out/asan/../../ui/aura/window.cc:975:0
#11 0x0000076acf4f in aura::Window::AddChild(aura::Window*) /out/asan/../../ui/aura/window.cc:394:0
#12 0x000005abad6d in ash::AlwaysOnTopController::OnWindowPropertyChanged(aura::Window*, void const*, long) /out/asan/../../ash/wm/always_on_top_controller.cc:65:18
#13 0x0000076b184f in aura::Window::AfterPropertyChange(void const*, long, std::__1::unique_ptr<ui::PropertyData, std::__1::default_delete<ui::PropertyData> >) /out/asan/../../ui/aura/window.cc:717:14
#14 0x00000772249a in ui::PropertyHandler::SetPropertyInternal(void const*, char const*, void (*)(long), long, long) /out/asan/../../ui/base/class_property.cc:35:3
#15 0x000007630301 in Set<bool> /out/asan/../../ui/base/class_property.h:171:28
#16 0x000007630301 in void ui::PropertyHandler::SetProperty<bool>(ui::ClassProperty<bool> const*, bool) /out/asan/../../ui/aura/client/aura_constants.cc:11:0
#17 0x000005b7dd44 in ash::wm::WindowState::DisableAlwaysOnTop(aura::Window*) /out/asan/../../ash/wm/window_state.cc:287:14
#18 0x000005ba04d0 in ash::WorkspaceLayoutManager::UpdateAlwaysOnTop(aura::Window*) /out/asan/../../ash/wm/workspace/workspace_layout_manager.cc:406:21
#19 0x0000058e76d4 in ash::Shell::NotifyFullscreenStateChanged(bool, aura::Window*) /out/asan/../../ash/shell.cc:579:14
#20 0x000005b9eac2 in UpdateFullscreenState /out/asan/../../ash/wm/workspace/workspace_layout_manager.cc:392:19
#21 0x000005b9eac2 in OnWindowStackingChanged /out/asan/../../ash/wm/workspace/workspace_layout_manager.cc:232:0
#22 0x000005b9eac2 in non-virtual thunk to ash::WorkspaceLayoutManager::OnWindowStackingChanged(aura::Window*) /out/asan/../../ash/wm/workspace/workspace_layout_manager.cc:0:0
#23 0x0000076b29e0 in aura::Window::OnStackingChanged() /out/asan/../../ui/aura/window.cc:942:14
#24 0x0000076abfd3 in aura::Window::StackChildRelativeTo(aura::Window*, aura::Window*, aura::Window::StackDirection) /out/asan/../../ui/aura/window.cc:927:10
#25 0x000007bf863c in StackActiveWindow /out/asan/../../ui/wm/core/focus_controller.cc:338:31
#26 0x000007bf863c in wm::FocusController::SetActiveWindow(wm::ActivationChangeObserver::ActivationReason, aura::Window*, aura::Window*) /out/asan/../../ui/wm/core/focus_controller.cc:314:0
#27 0x000007bf543f in wm::FocusController::FocusAndActivateWindow(wm::ActivationChangeObserver::ActivationReason, aura::Window*) /out/asan/../../ui/wm/core/focus_controller.cc:215:5
#28 0x000007c0eb45 in wm::ActivateWindow(aura::Window*) /out/asan/../../ui/wm/core/window_util.cc:62:49
#29 0x000005af5fe3 in ash::WindowSelector::SelectWindow(ash::WindowSelectorItem*) /out/asan/../../ash/wm/overview/window_selector.cc:473:31
#30 0x000005b06ea7 in ash::WindowSelectorItem::ButtonPressed(views::Button*, ui::Event const&) /out/asan/../../ash/wm/overview/window_selector_item.cc:871:23
#31 0x000007a3ea34 in views::Button::OnMouseReleased(ui::MouseEvent const&) /out/asan/../../ui/views/controls/button/button.cc:231:9
#32 0x000005b0d602 in ash::(anonymous namespace)::ShieldButton::OnMouseReleased(ui::MouseEvent const&) /out/asan/../../ash/wm/overview/window_selector_item.cc:210:20
#33 0x000007a1093e in views::InkDropHostView::OnMouseEvent(ui::MouseEvent*) /out/asan/../../ui/views/animation/ink_drop_host_view.cc:273:9
#34 0x000007857352 in DispatchEvent /out/asan/../../ui/events/event_dispatcher.cc:191:12
#35 0x000007857352 in ui::EventDispatcher::ProcessEvent(ui::EventTarget*, ui::Event*) /out/asan/../../ui/events/event_dispatcher.cc:139:0
#36 0x000007856cf2 in DispatchEventToTarget /out/asan/../../ui/events/event_dispatcher.cc:86:14
#37 0x000007856cf2 in ui::EventDispatcherDelegate::DispatchEvent(ui::EventTarget*, ui::Event*) /out/asan/../../ui/events/event_dispatcher.cc:58:0
#38 0x000007b6251e in views::internal::RootView::OnMouseReleased(ui::MouseEvent const&) /out/asan/../../ui/views/widget/root_view.cc:442:9
#39 0x000007b78c3d in views::Widget::OnMouseEvent(ui::MouseEvent*) /out/asan/../../ui/views/widget/widget.cc:1220:20
#40 0x000007bbd81e in views::NativeWidgetAura::OnMouseEvent(ui::MouseEvent*) /out/asan/../../ui/views/widget/native_widget_aura.cc:0:14
#41 0x000007857352 in DispatchEvent /out/asan/../../ui/events/event_dispatcher.cc:191:12
#42 0x000007857352 in ui::EventDispatcher::ProcessEvent(ui::EventTarget*, ui::Event*) /out/asan/../../ui/events/event_dispatcher.cc:139:0
#43 0x000007856cf2 in DispatchEventToTarget /out/asan/../../ui/events/event_dispatcher.cc:86:14
#44 0x000007856cf2 in ui::EventDispatcherDelegate::DispatchEvent(ui::EventTarget*, ui::Event*) /out/asan/../../ui/events/event_dispatcher.cc:58:0
#45 0x00000785b3f3 in ui::EventProcessor::OnEventFromSource(ui::Event*) /out/asan/../../ui/events/event_processor.cc:57:17
#46 0x00000785c7a3 in DeliverEventToSink /out/asan/../../ui/events/event_source.cc:73:16
#47 0x00000785c7a3 in ui::EventSource::SendEventToSink(ui::Event*) /out/asan/../../ui/events/event_source.cc:51:0
#48 0x0000078b5cef in ui::test::EventGenerator::DoDispatchEvent(ui::Event*, bool) /out/asan/../../ui/events/test/event_generator.cc:736:29
#49 0x0000078ad848 in Dispatch /out/asan/../../ui/events/test/event_generator.cc:623:3
#50 0x0000078ad848 in ui::test::EventGenerator::ReleaseButton(int) /out/asan/../../ui/events/test/event_generator.cc:697:0
#51 0x00000162ccda in ClickWindow /out/asan/../../ash/wm/overview/window_selector_unittest.cc:244:21
#52 0x00000162ccda in ash::WindowSelectorTest_HandleAlwaysOnTopWindow_Test::TestBody() /out/asan/../../ash/wm/overview/window_selector_unittest.cc:2419:0
#53 0x0000038ad49d in testing::Test::Run() /out/asan/../../third_party/googletest/src/googletest/src/gtest-internal-inl.h:0:10
#54 0x0000038af375 in testing::TestInfo::Run() /out/asan/../../third_party/googletest/src/googletest/src/gtest.cc:2645:11
#55 0x0000038b06d7 in testing::TestCase::Run() /out/asan/../../third_party/googletest/src/googletest/src/gtest.cc:2763:28
#56 0x0000038c8e77 in testing::internal::UnitTestImpl::RunAllTests() /out/asan/../../third_party/googletest/src/googletest/src/gtest.cc:4638:43
#57 0x0000038c83b9 in testing::UnitTest::Run() /out/asan/../../third_party/googletest/src/googletest/src/gtest.cc:0:0
#58 0x000005efa13c in RUN_ALL_TESTS /out/asan/../../third_party/googletest/src/googletest/include/gtest/gtest.h:2297:46
#59 0x000005efa13c in base::TestSuite::Run() /out/asan/../../base/test/test_suite.cc:271:0
#60 0x000005eff9c9 in Run /out/asan/../../base/callback.h:124:12
#61 0x000005eff9c9 in base::(anonymous namespace)::LaunchUnitTestsInternal(base::RepeatingCallback<int ()> const&, unsigned long, int, bool, base::RepeatingCallback<void ()> const&) /out/asan/../../base/test/launcher/unit_test_launcher.cc:220:0
#62 0x000005eff4c1 in base::LaunchUnitTests(int, char**, base::RepeatingCallback<int ()> const&) /out/asan/../../base/test/launcher/unit_test_launcher.cc:558:10
#63 0x0000013d5c8d in main /out/asan/../../ash/test/ash_unittests.cc:14:10
#64 0x7f74e02192b1 in __libc_start_main ??:0:0
#65 0x000000590baa in _start ??:0:0
Comment 1 by wutao@chromium.org
, Feb 25 2018