Changeset 50111 in webkit


Ignore:
Timestamp:
Oct 26, 2009 4:20:25 PM (15 years ago)
Author:
beidson@apple.com
Message:

<rdar://problem/7308952> and http://webkit.org/b/30424 - REGRESSION (r48687): Pages on ucas.com appear blank.

Reviewed by Darin Adler.

WebCore:

Test: fast/loader/history-forward-in-head.html

  • loader/RedirectScheduler.cpp:

(WebCore::RedirectScheduler::scheduleHistoryNavigation): Restore the moved canGoBackOrForward() check.

This restores the side effect of an invalid history navigation canceling previous scheduled redirects
and also fixes the bug of scheduling an invalid history navigation canceling parsing of the current document.

(WebCore::RedirectScheduler::timerFired): Removed the canGoBackOrForward() check as it is now made before

the redirect is scheduled.

LayoutTests:

  • fast/loader/history-forward-in-head-expected.txt: Added.
  • fast/loader/history-forward-in-head.html: Added.
Location:
trunk
Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r50110 r50111  
     12009-10-26  Brady Eidson  <beidson@apple.com>
     2
     3        Reviewed by Darin Adler.
     4
     5        <rdar://problem/7308952> and http://webkit.org/b/30424 - REGRESSION (r48687): Pages on ucas.com appear blank.
     6
     7        * fast/loader/history-forward-in-head-expected.txt: Added.
     8        * fast/loader/history-forward-in-head.html: Added.
     9
    1102009-10-26  Alexey Proskuryakov  <ap@apple.com>
    211
  • trunk/WebCore/ChangeLog

    r50110 r50111  
     12009-10-26  Brady Eidson  <beidson@apple.com>
     2
     3        Reviewed by Darin Adler.
     4
     5        <rdar://problem/7308952> and http://webkit.org/b/30424 - REGRESSION (r48687): Pages on ucas.com appear blank.
     6
     7        Test: fast/loader/history-forward-in-head.html
     8
     9        * loader/RedirectScheduler.cpp:
     10        (WebCore::RedirectScheduler::scheduleHistoryNavigation): Restore the moved canGoBackOrForward() check.
     11          This restores the side effect of an invalid history navigation canceling previous scheduled redirects
     12          and also fixes the bug of scheduling an invalid history navigation canceling parsing of the current document.
     13        (WebCore::RedirectScheduler::timerFired): Removed the canGoBackOrForward() check as it is now made before
     14          the redirect is scheduled.
     15
    1162009-10-26  Alexey Proskuryakov  <ap@apple.com>
    217
  • trunk/WebCore/loader/RedirectScheduler.cpp

    r49809 r50111  
    256256        return;
    257257
     258    // Invalid history navigations (such as history.forward() during a new load) have the side effect of cancelling any scheduled
     259    // redirects. We also avoid the possibility of cancelling the current load by avoiding the scheduled redirection altogether.
     260    if (!m_frame->page()->canGoBackOrForward(steps)) {
     261        cancel();
     262        return;
     263    }
     264
    258265    schedule(new ScheduledRedirection(steps));
    259266}
     
    283290            // go(i!=0) from a frame navigates into the history of the frame only,
    284291            // in both IE and NS (but not in Mozilla). We can't easily do that.
    285             if (m_frame->page()->canGoBackOrForward(redirection->historySteps))
    286                 m_frame->page()->goBackOrForward(redirection->historySteps);
     292            m_frame->page()->goBackOrForward(redirection->historySteps);
    287293            return;
    288294        case ScheduledRedirection::formSubmission:
Note: See TracChangeset for help on using the changeset viewer.