Bug 25399 - WebKit Crashes on Lexis-Nexis
Summary: WebKit Crashes on Lexis-Nexis
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Page Loading (show other bugs)
Version: 528+ (Nightly build)
Hardware: Mac OS X 10.5
: P1 Normal
Assignee: Alexey Proskuryakov
URL: http://www.lexisnexis.com/
Keywords: InRadar, NeedsReduction
Depends on:
Blocks:
 
Reported: 2009-04-25 16:36 PDT by Hayden
Modified: 2009-04-27 09:59 PDT (History)
2 users (show)

See Also:


Attachments
Crash Report from Lexis Nexis (RTF) (33.25 KB, application/octet-stream)
2009-04-25 16:37 PDT, Hayden
no flags Details
2nd Crash Report (36.46 KB, application/octet-stream)
2009-04-25 16:44 PDT, Hayden
no flags Details
proposed fix (8.06 KB, patch)
2009-04-27 02:17 PDT, Alexey Proskuryakov
darin: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Hayden 2009-04-25 16:36:03 PDT
WebKit Crashes on Lexis-Nexis
Comment 1 Hayden 2009-04-25 16:37:21 PDT
Created attachment 29791 [details]
Crash Report from Lexis Nexis (RTF)
Comment 2 Hayden 2009-04-25 16:44:56 PDT
Created attachment 29792 [details]
2nd Crash Report
Comment 3 Mark Rowe (bdash) 2009-04-25 20:37:42 PDT
Can you provide more specific instructions on how to reproduce this crash?  Is simply loading the URL sufficient, or do specific links need to be clicked?
Comment 4 Mark Rowe (bdash) 2009-04-25 20:37:58 PDT
<rdar://problem/6828178>
Comment 5 Alexey Proskuryakov 2009-04-26 12:54:10 PDT
<rdar://problem/6633943>

One needs an account to reproduce this.
Comment 6 Alexey Proskuryakov 2009-04-27 02:17:23 PDT
Created attachment 29814 [details]
proposed fix

Alas, I could not make a regression test, even after trying hard.
Comment 7 Darin Adler 2009-04-27 07:51:37 PDT
Comment on attachment 29814 [details]
proposed fix

r=me
Comment 8 Darin Adler 2009-04-27 07:52:57 PDT
Comment on attachment 29814 [details]
proposed fix

> +#ifndef NDEBUG
> +    DocumentResourceMap::iterator it = m_documentResources.find(resource->url());
> +    if (it != m_documentResources.end())
> +        ASSERT(it->second.get() == resource);
> +#endif

You could write this:

    ASSERT(!m_documentResources.contains(resource->url()) || m_documentResources.get(resource->url()) == resource);

I think it's a little easier to understand.
Comment 9 Alexey Proskuryakov 2009-04-27 09:09:32 PDT
> I think it's a little easier to understand.

That's how I wrote it originally, but it was difficult to see why the assertion failed when stopped on it in the debugger.
Comment 10 Darin Adler 2009-04-27 09:14:07 PDT
(In reply to comment #9)
> That's how I wrote it originally, but it was difficult to see why the assertion
> failed when stopped on it in the debugger.

OK.
Comment 11 Alexey Proskuryakov 2009-04-27 09:59:02 PDT
Committed <http://trac.webkit.org/changeset/42896>.