[Webkit-unassigned] [Bug 48812] FrameLoader::checkLoadCompleteForThisFrame uses wrong history item

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Nov 24 13:38:18 PST 2010


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





--- Comment #37 from Darin Fisher (:fishd, Google) <fishd at chromium.org>  2010-11-24 13:38:17 PST ---
(From update of attachment 74305)
View in context: https://bugs.webkit.org/attachment.cgi?id=74305&action=review

> WebCore/loader/FrameLoader.cpp:2380
> +                    if (pdl->triggeringAction().historyItem() == page->backForward()->currentItem()) {

Can we make use HistoryController::currentItem() or perhaps HistoryController::provisionalItem()?
It seems that in the back/forward navigation case, HistoryController::goToItem sets
HistoryController::m_provisionalItem, and then when we commit the load, that gets promoted to
HistoryController::m_currentItem.  If another load comes in after that, then the BackForwardList's
currentItem would change to correspond to the new provisional HistoryItem.

I'm also a bit confused as to why this code only assigns |item| when the current frame is the
main frame.  This makes me wonder if calling BackForwardList::setCurrentItem here is really
the right thing to do.  If a navigation only occurs in a subframe, we'd still want to
potentially update the BackForwardList.

-- 
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