Summary: | REGRESSION (r101201): Crash inside WebKit::WebInspector::didClose() when closing any tab | ||||||
---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Kevin M. Dean <kevin> | ||||
Component: | Web Inspector (Deprecated) | Assignee: | Pavel Feldman <pfeldman> | ||||
Status: | RESOLVED FIXED | ||||||
Severity: | Critical | CC: | artmeakin, juanfc, mitz, mmcneil, mrowe, ossy, pfeldman, phiw2, svetloslav, yurys | ||||
Priority: | P1 | Keywords: | InRadar, Regression | ||||
Version: | 528+ (Nightly build) | ||||||
Hardware: | Mac (Intel) | ||||||
OS: | OS X 10.7 | ||||||
Attachments: |
|
Description
Kevin M. Dean
2011-11-27 19:27:03 PST
The immediate reason for this crash is: void WebInspectorClient::closeInspectorFrontend() { m_page->inspector()->didClose(); } m_page->inspector() is returning 0. And that happens because WebPage marks itself as closed in WebPage::close before the WebCore::Page is torn down. Does WebInspectorClient::inspectorDestroyed just need to grow a null check? Created attachment 116715 [details]
Patch
Comment on attachment 116715 [details]
Patch
Given that ::inspector() is more than a trivial getter I think it’d be preferable to do:
if (WebInspector* inspector = m_page->inspector())
inspector->didClose();
Committed r101239: <http://trac.webkit.org/changeset/101239> *** Bug 73188 has been marked as a duplicate of this bug. *** *** Bug 73223 has been marked as a duplicate of this bug. *** *** Bug 73222 has been marked as a duplicate of this bug. *** *** Bug 73207 has been marked as a duplicate of this bug. *** *** Bug 73657 has been marked as a duplicate of this bug. *** |