Changeset 140842 in webkit


Ignore:
Timestamp:
Jan 25, 2013 10:04:37 AM (11 years ago)
Author:
tonyg@chromium.org
Message:

Abort parsing when pending location change for threaded HTML parser
https://bugs.webkit.org/show_bug.cgi?id=107876

Reviewed by Eric Seidel.

The main thread parser does this in canTakeNextToken. Adding this check to the threaded parser causes us to pass
fast/loader/location-change-aborts-parsing.html.

No new tests because covered by existing tests.

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::processTokensFromBackgroundParser):

Location:
trunk/Source/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r140839 r140842  
     12013-01-25  Tony Gentilcore  <tonyg@chromium.org>
     2
     3        Abort parsing when pending location change for threaded HTML parser
     4        https://bugs.webkit.org/show_bug.cgi?id=107876
     5
     6        Reviewed by Eric Seidel.
     7
     8        The main thread parser does this in canTakeNextToken. Adding this check to the threaded parser causes us to pass
     9        fast/loader/location-change-aborts-parsing.html.
     10
     11        No new tests because covered by existing tests.
     12
     13        * html/parser/HTMLDocumentParser.cpp:
     14        (WebCore::HTMLDocumentParser::processTokensFromBackgroundParser):
     15
    1162013-01-25  Mike West  <mkwst@chromium.org>
    217
  • trunk/Source/WebCore/html/parser/HTMLDocumentParser.cpp

    r140628 r140842  
    304304            break;
    305305
    306         // FIXME: We'll probably need to check document()->frame()->navigationScheduler()->locationChangePending())
    307         // as we do in canTakeNextToken;
     306        if (!isParsingFragment()
     307            && document()->frame() && document()->frame()->navigationScheduler()->locationChangePending())
     308            break;
    308309
    309310        if (isWaitingForScripts()) {
Note: See TracChangeset for help on using the changeset viewer.