[Webkit-unassigned] [Bug 87416] New: [Win] Crash under DocumentLoader::didTellClientAboutLoad when running fast/dom/Window/Location/window-override-location-using-defineGetter.html after LayoutTests/fast/dom/Window/Location/set-location-after-close.html

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu May 24 12:52:53 PDT 2012


https://bugs.webkit.org/show_bug.cgi?id=87416

           Summary: [Win] Crash under
                    DocumentLoader::didTellClientAboutLoad when running
                    fast/dom/Window/Location/window-override-location-usin
                    g-defineGetter.html after
                    LayoutTests/fast/dom/Window/Location/set-location-afte
                    r-close.html
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: All
        OS/Version: Windows 7
            Status: NEW
          Keywords: LayoutTestFailure, MakingBotsRed, NeedsRadar
          Severity: Normal
          Priority: P2
         Component: Page Loading
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: jberlin at webkit.org
                CC: beidson at apple.com, webkit-bug-importer at group.apple.com


run-webkit-tests LayoutTests/fast/dom/Window/Location/set-location-after-close.html LayoutTests/fast/dom/Window/Location/window-override-location-using-defineGetter.html

Unhandled exception at 0x62bb3112 (WebKit.dll) in DumpRenderTree.exe: 0xC0000005: Access violation reading location 0x0000060c.

>	WebKit.dll!WTF::OwnPtr<WTF::Mutex>::operator*()  Line 63 + 0x12 bytes	C++
     WebKit.dll!WTF::HashTable<WTF::String,WTF::String,WTF::IdentityExtractor,WTF::StringHash,WTF::HashTraits<WTF::String>,WTF::HashTraits<WTF::String> >::invalidateIterators()  Line 1114 + 0xb bytes    C++
     WebKit.dll!WTF::HashTable<WTF::String,WTF::String,WTF::IdentityExtractor,WTF::StringHash,WTF::HashTraits<WTF::String>,WTF::HashTraits<WTF::String> >::add<WTF::IdentityHashTranslator<WTF::StringHash>,WTF::String,WTF::String>(const WTF::String & key={...}, const WTF::String & extra={...})  Line 692    C++
     WebKit.dll!WTF::HashTable<WTF::String,WTF::String,WTF::IdentityExtractor,WTF::StringHash,WTF::HashTraits<WTF::String>,WTF::HashTraits<WTF::String> >::add(const WTF::String & value={...})  Line 349 + 0x2b bytes    C++
     WebKit.dll!WTF::HashSet<WTF::String,WTF::StringHash,WTF::HashTraits<WTF::String> >::add(const WTF::String & value={...})  Line 183 + 0x10 bytes    C++
     WebKit.dll!WebCore::DocumentLoader::didTellClientAboutLoad(const WTF::String & url={...})  Line 230 + 0x16 bytes    C++
     WebKit.dll!WebCore::ResourceLoadNotifier::dispatchWillSendRequest(WebCore::DocumentLoader * loader=0x033943d0, unsigned long identifier=4, WebCore::ResourceRequest & request={...}, const WebCore::ResourceResponse & redirectResponse={...})  Line 113    C++
     WebKit.dll!WebCore::ResourceLoadNotifier::willSendRequest(WebCore::ResourceLoader * loader=0x033872a8, WebCore::ResourceRequest & clientRequest={...}, const WebCore::ResourceResponse & redirectResponse={...})  Line 65    C++
     WebKit.dll!WebCore::ResourceLoader::willSendRequest(WebCore::ResourceRequest & request={...}, const WebCore::ResourceResponse & redirectResponse={...})  Line 234    C++
     WebKit.dll!WebCore::MainResourceLoader::willSendRequest(WebCore::ResourceRequest & newRequest={...}, const WebCore::ResourceResponse & redirectResponse={...})  Line 243    C++
     WebKit.dll!WebCore::MainResourceLoader::loadNow(WebCore::ResourceRequest & r={...})  Line 629 + 0x1f bytes    C++
     WebKit.dll!WebCore::MainResourceLoader::load(const WebCore::ResourceRequest & r={...}, const WebCore::SubstituteData & substituteData={...})  Line 678 + 0xf bytes    C++
     WebKit.dll!WebCore::DocumentLoader::startLoadingMainResource()  Line 841    C++
     WebKit.dll!WebCore::FrameLoader::continueLoadAfterWillSubmitForm()  Line 2159    C++
     WebKit.dll!WebCore::FrameLoader::continueLoadAfterNavigationPolicy(const WebCore::ResourceRequest & __formal={...}, WTF::PassRefPtr<WebCore::FormState> formState={...}, bool shouldContinue=true)  Line 2765    C++
     WebKit.dll!WebCore::FrameLoader::callContinueLoadAfterNavigationPolicy(void * argument=0x03369e60, const WebCore::ResourceRequest & request={...}, WTF::PassRefPtr<WebCore::FormState> formState={...}, bool shouldContinue=true)  Line 2635    C++
     WebKit.dll!WebCore::PolicyCallback::call(bool shouldContinue=true)  Line 103 + 0x34 bytes    C++
     WebKit.dll!WebCore::PolicyChecker::continueAfterNavigationPolicy(WebCore::PolicyAction policy=PolicyUse)  Line 168    C++
     WebKit.dll!WebFrame::receivedPolicyDecision(WebCore::PolicyAction action=PolicyUse)  Line 1753 + 0x1a bytes    C++
     WebKit.dll!WebFramePolicyListener::receivedPolicyDecision(WebCore::PolicyAction action=PolicyUse)  Line 126    C++
     WebKit.dll!WebFramePolicyListener::use()  Line 97    C++
     WebKit.dll!DefaultPolicyDelegate::decidePolicyForNavigationAction(IWebView * webView=0x033632b8, IPropertyBag * actionInformation=0x00470a28, IWebURLRequest * request=0x03371380, IWebFrame * __formal=0x0048efc0, IWebPolicyDecisionListener * listener=0x03330228)  Line 117 + 0x10 bytes    C++
     WebKit.dll!WebFrame::dispatchDecidePolicyForNavigationAction(void (WebCore::PolicyAction)* function=0x63e68d10, const WebCore::NavigationAction & action={...}, const WebCore::ResourceRequest & request={...}, WTF::PassRefPtr<WebCore::FormState> formState={...})  Line 1803 + 0x59 bytes    C++
     WebKit.dll!WebCore::PolicyChecker::checkNavigationPolicy(const WebCore::ResourceRequest & request={...}, WebCore::DocumentLoader * loader=0x033943d0, WTF::PassRefPtr<WebCore::FormState> formState={...}, void (void *, const WebCore::ResourceRequest &, WTF::PassRefPtr<WebCore::FormState>, bool)* function=0x633094a0, void * argument=0x03369e60)  Line 90    C++
     WebKit.dll!WebCore::FrameLoader::loadWithDocumentLoader(WebCore::DocumentLoader * loader=0x033943d0, WebCore::FrameLoadType type=FrameLoadTypeStandard, WTF::PassRefPtr<WebCore::FormState> prpFormState={...})  Line 1367    C++
     WebKit.dll!WebCore::FrameLoader::loadWithNavigationAction(const WebCore::ResourceRequest & request={...}, const WebCore::NavigationAction & action={...}, bool lockHistory=true, WebCore::FrameLoadType type=FrameLoadTypeStandard, WTF::PassRefPtr<WebCore::FormState> formState={...})  Line 1272    C++
     WebKit.dll!WebCore::FrameLoader::loadURL(const WebCore::KURL & newURL={...}, const WTF::String & referrer={...}, const WTF::String & frameName={...}, bool lockHistory=true, WebCore::FrameLoadType newLoadType=FrameLoadTypeStandard, WTF::PassRefPtr<WebCore::Event> event={...}, WTF::PassRefPtr<WebCore::FormState> prpFormState={...})  Line 1205    C++
     WebKit.dll!WebCore::FrameLoader::loadFrameRequest(const WebCore::FrameLoadRequest & request={...}, bool lockHistory=true, bool lockBackForwardList=false, WTF::PassRefPtr<WebCore::Event> event={...}, WTF::PassRefPtr<WebCore::FormState> formState={...}, WebCore::ShouldSendReferrer shouldSendReferrer=MaybeSendReferrer)  Line 1138    C++
     WebKit.dll!WebCore::FrameLoader::urlSelected(const WebCore::FrameLoadRequest & passedRequest={...}, WTF::PassRefPtr<WebCore::Event> triggeringEvent={...}, bool lockHistory=true, bool lockBackForwardList=false, WebCore::ShouldSendReferrer shouldSendReferrer=MaybeSendReferrer, WebCore::ShouldReplaceDocumentIfJavaScriptURL shouldReplaceDocumentIfJavaScriptURL=ReplaceDocumentIfJavaScriptURL)  Line 284    C++
     WebKit.dll!WebCore::FrameLoader::changeLocation(WebCore::SecurityOrigin * securityOrigin=0x033342d0, const WebCore::KURL & url={...}, const WTF::String & referrer={...}, bool lockHistory=true, bool lockBackForwardList=false, bool refresh=false)  Line 252 + 0x64 bytes    C++
     WebKit.dll!WebCore::ScheduledURLNavigation::fire(WebCore::Frame * frame=0x03369e00)  Line 109 + 0x48 bytes    C++
     WebKit.dll!WebCore::NavigationScheduler::timerFired(WebCore::Timer<WebCore::NavigationScheduler> * __formal=0x0336a130)  Line 418 + 0x20 bytes    C++
     WebKit.dll!WebCore::Timer<WebCore::NavigationScheduler>::fired()  Line 100 + 0x23 bytes    C++
     WebKit.dll!WebCore::ThreadTimers::sharedTimerFiredInternal()  Line 115 + 0xf bytes    C++
     WebKit.dll!WebCore::ThreadTimers::sharedTimerFired()  Line 94    C++
     WebKit.dll!WebCore::TimerWindowWndProc(HWND__ * hWnd=0x0033043e, unsigned int message=49583, unsigned int wParam=0, long lParam=0)  Line 103 + 0x8 bytes    C++
     user32.dll!75c26238()     
     [Frames below may be incorrect and/or missing, no symbols loaded for user32.dll]    
     user32.dll!75c268ea()     
     user32.dll!75c26899()     
     user32.dll!75c27d31()     
     user32.dll!75c27dfa()     
     DumpRenderTree.dll!runTest(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & testPathOrURL="C:\cygwin\home\buildbot\OpenSource\LayoutTests\fast\dom\Window\Location\window-override-location-using-defineGetter.html")  Line 1053 + 0xf bytes    C++
     DumpRenderTree.dll!dllLauncherEntryPoint(int argc=2, const char * * argv=0x00192578)  Line 1435 + 0x28 bytes    C++
     DumpRenderTree.exe!main(int argc=2, const char * * argv=0x00192578)  Line 198 + 0x10 bytes    C++
     DumpRenderTree.exe!__tmainCRTStartup()  Line 597 + 0x17 bytes    C
     kernel32.dll!75103677()     
     ntdll.dll!77989f42()     
     ntdll.dll!77989f15()     


Note that there is also stderr output for fast/dom/Window/Location/set-location-after-close.html:

ASSERTION FAILED: iter->first->suspendIfNeededCalled()
c:\cygwin\home\buildbot\opensource\source\webcore\dom\ScriptExecutionContext.cpp(224) : WebCore::ScriptExecutionContext::stopActiveDOMObjects
1   6310FB13
2   630D4590
3   630D475B
4   62EE5055
5   63308283
6   6415CE00
7   64162275
8   75C26238
9   75C268EA
10  75C27177
11  75C272F1
12  779600E6
13  6415F14C
14  6415F067
15  6415EFB9
16  63FAF5E9
17  63FAF506
18  640F30E6
19  75C26238
20  75C268EA
21  75C27D31
22  75C27DFA
23  6F40AD9A
24  6F409B6F
25  00FE165B
26  00FE37A5
27  75103677
28  77989F42
29  77989F15

note also that this crash does not occur if the second test is run alone

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list