Bug 26134 - REGRESSION: Crash (preceded by assertion) in InspectorController::didCommitLoad when reloading or navigating with the Inspector open
Summary: REGRESSION: Crash (preceded by assertion) in InspectorController::didCommitLo...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Web Inspector (Deprecated) (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC All
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar, Regression
Depends on:
Blocks:
 
Reported: 2009-06-02 09:17 PDT by Adam Roben (:aroben)
Modified: 2009-06-03 09:42 PDT (History)
3 users (show)

See Also:


Attachments
Patch with the fix (4.55 KB, patch)
2009-06-02 11:48 PDT, Pavel Feldman
timothy: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Adam Roben (:aroben) 2009-06-02 09:17:43 PDT
To reproduce:

1. Go to <http://webkit.org/>
2. Right-click on the page and choose "Inspect Element"
3. Reload the page, or click a link on the page

You'll hit this assertion in InspectorController::didCommitLoad:

                ASSERT(m_mainResource && m_mainResource->isSameLoader(loader));

Continuing past this assertion would lead to a crash.

Here's the backtrace (when reloading):

>	WebKit_debug.dll!WebCore::InspectorController::didCommitLoad(WebCore::DocumentLoader * loader=0x0e3f09b8)  Line 738 + 0x49 bytes	C++
 	WebKit_debug.dll!WebCore::FrameLoader::dispatchDidCommitLoad()  Line 5208	C++
 	WebKit_debug.dll!WebCore::FrameLoader::receivedFirstData()  Line 888	C++
 	WebKit_debug.dll!WebCore::FrameLoader::setEncoding(const WebCore::String & name={}, bool userChosen=false)  Line 1810	C++
 	WebKit_debug.dll!WebFrameLoaderClient::receivedData(const char * data=0x0aa91fb8, int length=1095, const WebCore::String & textEncoding={})  Line 463	C++
 	WebKit_debug.dll!WebFrameLoaderClient::committedLoad(WebCore::DocumentLoader * loader=0x0e3f09b8, const char * data=0x0aa91fb8, int length=1095)  Line 435	C++
 	WebKit_debug.dll!WebCore::FrameLoader::committedLoad(WebCore::DocumentLoader * loader=0x0e3f09b8, const char * data=0x0aa91fb8, int length=1095)  Line 3639 + 0x24 bytes	C++
 	WebKit_debug.dll!WebCore::DocumentLoader::commitLoad(const char * data=0x0aa91fb8, int length=1095)  Line 362	C++
 	WebKit_debug.dll!WebCore::DocumentLoader::receivedData(const char * data=0x0aa91fb8, int length=1095)  Line 374	C++
 	WebKit_debug.dll!WebCore::FrameLoader::receivedData(const char * data=0x0aa91fb8, int length=1095)  Line 2458	C++
 	WebKit_debug.dll!WebCore::MainResourceLoader::addData(const char * data=0x0aa91fb8, int length=1095, bool allAtOnce=false)  Line 149	C++
 	WebKit_debug.dll!WebCore::ResourceLoader::didReceiveData(const char * data=0x0aa91fb8, int length=1095, __int64 lengthReceived=1095, bool allAtOnce=false)  Line 257 + 0x1b bytes	C++
 	WebKit_debug.dll!WebCore::MainResourceLoader::didReceiveData(const char * data=0x0aa91fb8, int length=1095, __int64 lengthReceived=1095, bool allAtOnce=false)  Line 361	C++
 	WebKit_debug.dll!WebCore::ResourceLoader::didReceiveData(WebCore::ResourceHandle * __formal=0x091f1cc8, const char * data=0x0aa91fb8, int length=1095, int lengthReceived=1095)  Line 411 + 0x1f bytes	C++
 	WebKit_debug.dll!WebCore::didReceiveData(_CFURLConnection * conn=0x0abe2fc8, const __CFData * data=0x0a5d3268, long originalLength=1095, const void * clientInfo=0x091f1cc8)  Line 155 + 0x2a bytes	C++
Comment 1 Adam Roben (:aroben) 2009-06-02 09:18:41 PDT
<rdar://problem/6940554>
Comment 2 Pavel Feldman 2009-06-02 11:48:05 PDT
Created attachment 30877 [details]
Patch with the fix
Comment 3 Timothy Hatcher 2009-06-02 13:42:26 PDT
Comment on attachment 30877 [details]
Patch with the fix

Thanks for fixing this. Next time make sure to mark the patch as review? so it shows up in the review queue.
Comment 4 Dimitri Glazkov (Google) 2009-06-03 09:42:22 PDT
Landed as http://trac.webkit.org/changeset/44385.