2011-01-08 Charlie Reis <creis@chromium.org>
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 9 Jan 2011 01:27:19 +0000 (01:27 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 9 Jan 2011 01:27:19 +0000 (01:27 +0000)
commit21a48d82955f23e2958fb3433ac2873bed925f94
tree622b24163b1a4fc5fd6247bf9abd29071d8bc097
parent9e7d7b2bfda9f6c8752c4fdc7235399c25fa3368
2011-01-08  Charlie Reis  <creis@chromium.org>

        Reviewed by Mihai Parparita.

        Canceled frame loads can corrupt back forward list
        https://bugs.webkit.org/show_bug.cgi?id=50254

        http/tests/navigation/forward-and-cancel.html aborts a slowly loading
        subframe in a frame tree and ensures the history items are updated properly.

        * LayoutTests/http/tests/navigation/forward-and-cancel-expected.txt: Added.
        * LayoutTests/http/tests/navigation/forward-and-cancel.html: Added.
        * LayoutTests/http/tests/navigation/resources/forward-and-cancel-frames.html: Added.
        * LayoutTests/http/tests/navigation/resources/forward-and-cancel-frames-container.html: Added.
2011-01-08  Charlie Reis  <creis@chromium.org>

        Reviewed by Mihai Parparita.

        Canceled frame loads can corrupt back forward list
        https://bugs.webkit.org/show_bug.cgi?id=50254

        Avoids changing m_currentItem until the navigation commits.
        Also resets top-level history items if a subframe navigation is canceled.

        * WebCore/loader/FrameLoader.cpp:
        (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
        * WebCore/loader/HistoryController.cpp:
        * WebCore/loader/HistoryController.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@75336 268f45cc-cd09-0410-ab3c-d52691b4dbfc
LayoutTests/ChangeLog
LayoutTests/http/tests/navigation/forward-and-cancel-expected.txt [new file with mode: 0644]
LayoutTests/http/tests/navigation/forward-and-cancel.html [new file with mode: 0644]
LayoutTests/http/tests/navigation/resources/forward-and-cancel-frames-container.html [new file with mode: 0644]
LayoutTests/http/tests/navigation/resources/forward-and-cancel-frames.html [new file with mode: 0644]
Source/WebCore/ChangeLog
Source/WebCore/loader/FrameLoader.cpp
Source/WebCore/loader/HistoryController.cpp
Source/WebCore/loader/HistoryController.h