Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(5)

Issue 10066041: Revert 132144 - Broke ASAN (Closed)

Created:
8 years, 8 months ago by Ryan Sleevi
Modified:
8 years, 8 months ago
Reviewers:
jianli
CC:
chromium-reviews, Dmitry Lomov (no reviews), jennb, Dmitry Titov, jianli, dcheng, Andrei
Visibility:
Public.

Description

Revert 132144 - Broke ASAN Move full-screen detection logic from PanelManager to DisplaySettingsProvider. Also fixed a bug that pnels remain visible with full screen apps on Snow Leopard. The fix is to also call orderBack/orderFront when full-screen is detected. This is because the full-sreen window is still in normal level and our panel windows stay in the top of z-order when its level is changed to normal. BUG=123058 TEST=Manual test by launching panels and make an app full-screen Review URL: http://codereview.chromium.org/10051020 TBR=jianli@chromium.org Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=132153

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+62 lines, -161 lines) Patch
M chrome/browser/ui/panels/base_panel_browser_test.cc View 1 chunk +2 lines, -16 lines 0 comments Download
M chrome/browser/ui/panels/display_settings_provider.h View 5 chunks +13 lines, -40 lines 0 comments Download
M chrome/browser/ui/panels/display_settings_provider.cc View 3 chunks +4 lines, -63 lines 0 comments Download
M chrome/browser/ui/panels/display_settings_provider_win.cc View 1 chunk +3 lines, -5 lines 0 comments Download
M chrome/browser/ui/panels/docked_panel_strip.cc View 1 chunk +1 line, -2 lines 0 comments Download
M chrome/browser/ui/panels/overflow_panel_strip.cc View 3 chunks +3 lines, -5 lines 0 comments Download
M chrome/browser/ui/panels/panel.cc View 2 chunks +2 lines, -2 lines 0 comments Download
M chrome/browser/ui/panels/panel_browser_view.cc View 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/ui/panels/panel_manager.h View 5 chunks +11 lines, -4 lines 0 comments Download
M chrome/browser/ui/panels/panel_manager.cc View 6 chunks +19 lines, -11 lines 0 comments Download
M chrome/browser/ui/panels/panel_window_controller_cocoa.mm View 3 chunks +3 lines, -12 lines 0 comments Download

Messages

Total messages: 2 (0 generated)
Ryan Sleevi
8 years, 8 months ago (2012-04-13 07:35:22 UTC) #1
Ryan Sleevi
8 years, 8 months ago (2012-04-13 07:55:40 UTC) #2
Sample log:
http://build.chromium.org/p/chromium.memory/builders/ASAN%20Tests%20%282%29/b...

Note: Google Test filter = PanelBrowserNavigatorTest.NavigateFromCrashedPanel
[==========] Running 1 test from 1 test case.
[----------] Global test environment set-up.
[----------] 1 test from PanelBrowserNavigatorTest, where TypeParam =
[ RUN      ] PanelBrowserNavigatorTest.NavigateFromCrashedPanel
[20238:20238:0412/235522:992058850:WARNING:zygote_host_impl_linux.cc(154)]
Running without the SUID sandbox! See
http://code.google.com/p/chromium/wiki/LinuxSUIDSandboxDevelopment for more
information on developing with the sandbox on.
[       OK ] PanelBrowserNavigatorTest.NavigateFromCrashedPanel (611 ms)
[----------] 1 test from PanelBrowserNavigatorTest (611 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (611 ms total)
[  PASSED  ] 1 test.
=================================================================
==20238== ERROR: AddressSanitizer heap-use-after-free on address 0x7f8a54a9e4b8
at pc 0x21b8abf bp 0x7fffcf88ef40 sp 0x7fffcf88ef38
READ of size 8 at 0x7f8a54a9e4b8 thread T0
    #0 0x21b8abf in
ObserverListBase<DisplaySettingsProvider::DesktopBarObserver>::RemoveObserver(DisplaySettingsProvider::DesktopBarObserver*)
???:0
    #1 0x21bcd7f in DockedPanelStrip::~DockedPanelStrip() ???:0
    #2 0x21bca2e in DockedPanelStrip::~DockedPanelStrip() ???:0
    #3 0x1aba738 in PanelManager::~PanelManager() ???:0
    #4 0x1abe9fd in base::LazyInstance<PanelManager,
base::DefaultLazyInstanceTraits<PanelManager> >::OnExit(void*) ???:0
    #5 0x272e79c in base::AtExitManager::ProcessCallbacksNow() ???:0
    #6 0x272e450 in base::AtExitManager::~AtExitManager() ???:0
    #7 0x284c4bd in base::TestSuite::~TestSuite() ???:0
    #8 0x26f2710 in ChromeTestSuite::~ChromeTestSuite() ???:0
    #9 0x10a7a14 in ChromeTestLauncherDelegate::RunTestSuite(int, char**) ???:0
    #10 0x120883f in
test_launcher::LaunchTests(test_launcher::TestLauncherDelegate*, int, char**)
???:0
    #11 0x10a7684 in main ???:0
    #12 0x7f8a6611ac4d in ?? ??:0
0x7f8a54a9e4b8 is located 56 bytes inside of 320-byte region
[0x7f8a54a9e480,0x7f8a54a9e5c0)
freed by thread T0 here:
    #0 0x92939f2 in operator delete(void*) ??:0
    #1 0x1aba59d in PanelManager::~PanelManager() ???:0
    #2 0x1abe9fd in base::LazyInstance<PanelManager,
base::DefaultLazyInstanceTraits<PanelManager> >::OnExit(void*) ???:0
    #3 0x272e79c in base::AtExitManager::ProcessCallbacksNow() ???:0
    #4 0x272e450 in base::AtExitManager::~AtExitManager() ???:0
    #5 0x284c4bd in base::TestSuite::~TestSuite() ???:0
    #6 0x26f2710 in ChromeTestSuite::~ChromeTestSuite() ???:0
    #7 0x10a7a14 in ChromeTestLauncherDelegate::RunTestSuite(int, char**) ???:0
    #8 0x120883f in
test_launcher::LaunchTests(test_launcher::TestLauncherDelegate*, int, char**)
???:0
    #9 0x10a7684 in main ???:0
    #10 0x7f8a6611ac4d in ?? ??:0
previously allocated by thread T0 here:
    #0 0x9293872 in operator new(unsigned long) ??:0
    #1 0x21b76b0 in DisplaySettingsProvider::Create() ???:0
    #2 0x1aba081 in PanelManager::PanelManager() ???:0
    #3 0x1abe93f in base::DefaultLazyInstanceTraits<PanelManager>::New(void*)
???:0
    #4 0x1ab95ca in PanelManager::GetInstance() ???:0
    #5 0x1971094 in Browser::CreateBrowserWindow() ???:0
    #6 0x19423df in Browser::InitBrowserWindow() ???:0
    #7 0x1942a2f in Browser::CreateWithParams(Browser::CreateParams const&)
???:0
    #8 0xd29c02 in (anonymous
namespace)::PanelBrowserNavigatorTest_NavigateFromCrashedPanel_Test::RunTestOnMainThread()
chrome/browser/ui/browser_navigator_browsertest.cc:0
    #9 0x26f7483 in InProcessBrowserTest::RunTestOnMainThreadLoop() ???:0
    #10 0x8252bd1 in ChromeBrowserMainParts::PreMainMessageLoopRunImpl() ???:0
    #11 0x82501c2 in ChromeBrowserMainParts::PreMainMessageLoopRun() ???:0
    #12 0x73301b6 in content::BrowserMainLoop::CreateThreads() ???:0
    #13 0x75c3ba2 in (anonymous
namespace)::BrowserMainRunnerImpl::Initialize(content::MainFunctionParams
const&) content/browser/browser_main_runner.cc:0
    #14 0x8e562bb in BrowserMain(content::MainFunctionParams const&) ???:0
    #15 0x8071a7d in BrowserTestBase::SetUp() ???:0
    #16 0x26f5d3b in InProcessBrowserTest::SetUp() ???:0
    #17 0x2ee46f1 in testing::Test::Run() ???:0
    #18 0x2ee6617 in testing::TestInfo::Run() ???:0
    #19 0x2ee7c08 in testing::TestCase::Run() ???:0
    #20 0x2ef4e9f in testing::internal::UnitTestImpl::RunAllTests() ???:0
    #21 0x2ef44bf in bool
testing::internal::HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl,
bool>(testing::internal::UnitTestImpl*, bool
(testing::internal::UnitTestImpl::*)(), char const*) ???:0
    #22 0x2ef42bb in testing::UnitTest::Run() ???:0
    #23 0x284cb48 in base::TestSuite::Run() ???:0
==20238== ABORTING
Stats: 26M malloced (60M for red zones) by 233517 calls
Stats: 1M realloced by 6587 calls
Stats: 22M freed by 200912 calls
Stats: 0M really freed by 0 calls
Stats: 124M (31755 full pages) mmaped in 31 calls
  mmaps   by size class: 8:229362; 9:16382; 10:8190; 11:4094; 12:2048; 13:512;
14:512; 15:128; 16:192; 17:32; 18:16;
  mallocs by size class: 8:217315; 9:8766; 10:3743; 11:1972; 12:1097; 13:150;
14:307; 15:16; 16:136; 17:10; 18:5;
  frees   by size class: 8:188173; 9:5860; 10:3464; 11:1814; 12:1035; 13:130;
14:292; 15:8; 16:131; 18:5;
  rfrees  by size class:
Stats: malloc large: 15 small slow: 738
Shadow byte and word:
  0x1ff14a953c97: fd
  0x1ff14a953c90: fd fd fd fd fd fd fd fd
More shadow bytes:
  0x1ff14a953c70: fa fa fa fa fa fa fa fa
  0x1ff14a953c78: fa fa fa fa fa fa fa fa
  0x1ff14a953c80: fa fa fa fa fa fa fa fa
  0x1ff14a953c88: fa fa fa fa fa fa fa fa
=>0x1ff14a953c90: fd fd fd fd fd fd fd fd
  0x1ff14a953c98: fd fd fd fd fd fd fd fd
  0x1ff14a953ca0: fd fd fd fd fd fd fd fd
  0x1ff14a953ca8: fd fd fd fd fd fd fd fd
  0x1ff14a953cb0: fd fd fd fd fd fd fd fd

Powered by Google App Engine
This is Rietveld 408576698