Note: Google Test filter = HeadlessWindowUAFTest.MinimizeAfterDestroyInOnWindowStateChanged [==========] Running 1 test from 1 test suite. [----------] Global test environment set-up. [----------] 1 test from HeadlessWindowUAFTest [ RUN ] HeadlessWindowUAFTest.MinimizeAfterDestroyInOnWindowStateChanged ================================================================= ==1039==ERROR: AddressSanitizer: heap-use-after-free on address 0x6e7a295e7890 at pc 0x63c9ef685608 bp 0x7ffca4d45e10 sp 0x7ffca4d45e08 READ of size 8 at 0x6e7a295e7890 thread T0 #0 0x63c9ef685607 in ui::HeadlessWindow::Minimize() ui/ozone/platform/headless/headless_window.cc:122:5 #1 0x63c9ed9a1b7c in ui::(anonymous namespace)::HeadlessWindowUAFTest_MinimizeAfterDestroyInOnWindowStateChanged_Test::TestBody() ui/ozone/platform/headless/headless_window_unittest.cc:134:15 #2 0x63c9ee8800eb in testing::Test::Run() third_party/googletest/src/googletest/src/gtest.cc #3 0x63c9ee882d47 in testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2892:11 #4 0x63c9ee884e43 in testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:3070:30 #5 0x63c9ee8b428a in testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:6062:44 #6 0x63c9ee8b2d5e in testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc #7 0x63c9f07f478c in base::TestSuite::Run() base/test/test_suite.cc:440:16 #8 0x63c9ed999a51 in base::internal::Invoker, base::internal::BindState>, int ()>::RunOnce(base::internal::BindStateBase*) base/functional/bind_internal.h:740:12 #9 0x63c9f0a6b03b in base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback, unsigned long, int, unsigned long, bool, base::RepeatingCallback, base::OnceCallback) base/functional/callback.h:155:12 #10 0x63c9f0a6a95b in base::LaunchUnitTests(int, char**, base::OnceCallback, unsigned long) base/test/launcher/unit_test_launcher.cc:337:10 #11 0x63c9ed99930b in main mojo/core/test/run_all_unittests.cc:30:10 #12 0x71ca2acd0249 (/lib/x86_64-linux-gnu/libc.so.6+0x27249) (BuildId: 6196744a316dbd57c0fd8968df1680aac482cec4) 0x6e7a295e7890 is located 0 bytes inside of 104-byte region [0x6e7a295e7890,0x6e7a295e78f8) freed by thread T0 here: #0 0x63c9ed998856 in operator delete(void*, unsigned long) (/chromium/chromium/src/out/asan/ozone_unittests+0x2a8b856) (BuildId: 6949a4af44665d89) #1 0x63c9ef685464 in ui::HeadlessWindow::Minimize() ui/ozone/platform/headless/headless_window.cc:207:14 #2 0x63c9ed9a1b7c in ui::(anonymous namespace)::HeadlessWindowUAFTest_MinimizeAfterDestroyInOnWindowStateChanged_Test::TestBody() ui/ozone/platform/headless/headless_window_unittest.cc:134:15 #3 0x63c9ee8800eb in testing::Test::Run() third_party/googletest/src/googletest/src/gtest.cc #4 0x63c9ee882d47 in testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2892:11 #5 0x63c9ee884e43 in testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:3070:30 #6 0x63c9ee8b428a in testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:6062:44 #7 0x63c9ee8b2d5e in testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc #8 0x63c9f07f478c in base::TestSuite::Run() base/test/test_suite.cc:440:16 #9 0x63c9ed999a51 in base::internal::Invoker, base::internal::BindState>, int ()>::RunOnce(base::internal::BindStateBase*) base/functional/bind_internal.h:740:12 #10 0x63c9f0a6b03b in base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback, unsigned long, int, unsigned long, bool, base::RepeatingCallback, base::OnceCallback) base/functional/callback.h:155:12 #11 0x63c9f0a6a95b in base::LaunchUnitTests(int, char**, base::OnceCallback, unsigned long) base/test/launcher/unit_test_launcher.cc:337:10 #12 0x63c9ed99930b in main mojo/core/test/run_all_unittests.cc:30:10 #13 0x71ca2acd0249 (/lib/x86_64-linux-gnu/libc.so.6+0x27249) (BuildId: 6196744a316dbd57c0fd8968df1680aac482cec4) previously allocated by thread T0 here: #0 0x63c9ed997c51 in operator new(unsigned long) (/chromium/chromium/src/out/asan/ozone_unittests+0x2a8ac51) (BuildId: 6949a4af44665d89) #1 0x63c9ed9a1ad1 in ui::(anonymous namespace)::HeadlessWindowUAFTest_MinimizeAfterDestroyInOnWindowStateChanged_Test::TestBody() third_party/libc++/src/include/__memory/unique_ptr.h:756:26 #2 0x63c9ee8800eb in testing::Test::Run() third_party/googletest/src/googletest/src/gtest.cc #3 0x63c9ee882d47 in testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2892:11 #4 0x63c9ee884e43 in testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:3070:30 #5 0x63c9ee8b428a in testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:6062:44 #6 0x63c9ee8b2d5e in testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc #7 0x63c9f07f478c in base::TestSuite::Run() base/test/test_suite.cc:440:16 #8 0x63c9ed999a51 in base::internal::Invoker, base::internal::BindState>, int ()>::RunOnce(base::internal::BindStateBase*) base/functional/bind_internal.h:740:12 #9 0x63c9f0a6b03b in base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback, unsigned long, int, unsigned long, bool, base::RepeatingCallback, base::OnceCallback) base/functional/callback.h:155:12 #10 0x63c9f0a6a95b in base::LaunchUnitTests(int, char**, base::OnceCallback, unsigned long) base/test/launcher/unit_test_launcher.cc:337:10 #11 0x63c9ed99930b in main mojo/core/test/run_all_unittests.cc:30:10 #12 0x71ca2acd0249 (/lib/x86_64-linux-gnu/libc.so.6+0x27249) (BuildId: 6196744a316dbd57c0fd8968df1680aac482cec4) SUMMARY: AddressSanitizer: heap-use-after-free ui/ozone/platform/headless/headless_window.cc:122:5 in ui::HeadlessWindow::Minimize() Shadow bytes around the buggy address: 0x6e7a295e7600: fd fd fd fd fd fd fd fd fa fa fa fa fa fa fa fa 0x6e7a295e7680: fd fd fd fd fd fd fd fd fd fd fd fd fd fa fa fa 0x6e7a295e7700: fa fa fa fa fa fa fd fd fd fd fd fd fd fd fd fd 0x6e7a295e7780: fd fd fd fd fa fa fa fa fa fa fa fa fd fd fd fd 0x6e7a295e7800: fd fd fd fd fd fd fd fd fd fd fa fa fa fa fa fa =>0x6e7a295e7880: fa fa[fd]fd fd fd fd fd fd fd fd fd fd fd fd fa 0x6e7a295e7900: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x6e7a295e7980: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x6e7a295e7a00: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x6e7a295e7a80: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x6e7a295e7b00: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb