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

Issue 126082: Fix a crash when closing an incognito window (Closed)

Created:
11 years, 6 months ago by Paul Godavari
Modified:
9 years, 7 months ago
CC:
chromium-reviews_googlegroups.com
Visibility:
Public.

Description

Fix a crash when closing an incognito window with a download shelf visible. We explicitly remove the download shelf view from the browser view hierarchy during a window close operation. This avoids calling back into the partially deleted view hierarchy with download deleted observer notifications. Explicitly removing the shelf allows the observer notifications to run first while the views are still valid. To reproduce: 1. Launch Chrome 2. Open an incognito window 3. Download something in the incognito window 4. The download shelf should become visible with one entry 5. Close the incognito window 6. Crash BUG=13681 (http://crbug.com/13681) Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=18458

Patch Set 1 #

Patch Set 2 : '' #

Total comments: 1

Patch Set 3 : '' #

Patch Set 4 : '' #

Unified diffs Side-by-side diffs Delta from patch set Stats (+15 lines, -8 lines) Patch
M chrome/browser/views/frame/browser_view.h View 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/views/frame/browser_view.cc View 1 2 3 5 chunks +14 lines, -7 lines 0 comments Download

Messages

Total messages: 5 (0 generated)
Paul Godavari
11 years, 6 months ago (2009-06-13 00:58:23 UTC) #1
Mohamed Mansour
This "now" seems not to crash (unlike the other patch). so LGTM I tried it ...
11 years, 6 months ago (2009-06-13 04:18:03 UTC) #2
Nico
You can get rid of the `browser_ == NULL` check in SetDownloadShelfVisible() now.
11 years, 6 months ago (2009-06-13 04:23:39 UTC) #3
Ben Goodger (Google)
http://codereview.chromium.org/126082/diff/1003/1004 File chrome/browser/views/frame/browser_view.cc (right): http://codereview.chromium.org/126082/diff/1003/1004#newcode857 Line 857: download_shelf_ = new DownloadShelfView(browser_.get(), this); download_shelf_ should be ...
11 years, 6 months ago (2009-06-15 20:37:59 UTC) #4
Paul Godavari
11 years, 6 months ago (2009-06-15 21:56:39 UTC) #5
Updated, though we still need to explicitly reset download_shelf_ before
browser_.

Powered by Google App Engine
This is Rietveld 408576698