Changeset 144240 in webkit


Ignore:
Timestamp:
Feb 27, 2013 2:39:19 PM (11 years ago)
Author:
abarth@webkit.org
Message:

Threaded HTML Parser fails fast/dom/HTMLAnchorElement/anchor-no-multiple-windows.html in debug
https://bugs.webkit.org/show_bug.cgi?id=110951

Reviewed by Eric Seidel.

We were triggering this ASSERT because we didn't understand that a
given frame might have multiple DocumentLoaders in various states. That
caused us to think that a DocumentLoader in the provisional state was
actually loading.

  • dom/Document.cpp:

(WebCore::Document::decrementActiveParserCount):

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::isLoading):

Location:
trunk/Source/WebCore
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r144237 r144240  
     12013-02-27  Adam Barth  <abarth@webkit.org>
     2
     3        Threaded HTML Parser fails fast/dom/HTMLAnchorElement/anchor-no-multiple-windows.html in debug
     4        https://bugs.webkit.org/show_bug.cgi?id=110951
     5
     6        Reviewed by Eric Seidel.
     7
     8        We were triggering this ASSERT because we didn't understand that a
     9        given frame might have multiple DocumentLoaders in various states. That
     10        caused us to think that a DocumentLoader in the provisional state was
     11        actually loading.
     12
     13        * dom/Document.cpp:
     14        (WebCore::Document::decrementActiveParserCount):
     15        * loader/DocumentLoader.cpp:
     16        (WebCore::DocumentLoader::isLoading):
     17
    1182013-02-27  Chris Fleizach  <cfleizach@apple.com>
    219
  • trunk/Source/WebCore/loader/DocumentLoader.cpp

    r144232 r144240  
    134134}
    135135
     136Document* DocumentLoader::document() const
     137{
     138    if (m_frame && m_frame->loader()->documentLoader() == this)
     139        return m_frame->document();
     140    return 0;
     141}
     142
    136143const ResourceRequest& DocumentLoader::originalRequest() const
    137144{
     
    285292    // see http://webkit.org/b/110554 and http://webkit.org/b/110401
    286293#if ENABLE(THREADED_HTML_PARSER)
    287     if (m_frame && m_frame->document() && m_frame->document()->hasActiveParser())
     294    if (document() && document()->hasActiveParser())
    288295        return true;
    289296#endif
  • trunk/Source/WebCore/loader/DocumentLoader.h

    r143986 r144240  
    8686       
    8787        DocumentWriter* writer() const { return &m_writer; }
     88        Document* document() const;
    8889
    8990        const ResourceRequest& originalRequest() const;
Note: See TracChangeset for help on using the changeset viewer.