| Index: Source/WebCore/page/Page.cpp
|
| ===================================================================
|
| --- Source/WebCore/page/Page.cpp (revision 79367)
|
| +++ Source/WebCore/page/Page.cpp (working copy)
|
| @@ -338,25 +338,10 @@
|
| // stopAllLoaders may end up running onload handlers, which could cause further history traversals that may lead to the passed in HistoryItem
|
| // being deref()-ed. Make sure we can still use it with HistoryController::goToItem later.
|
| RefPtr<HistoryItem> protector(item);
|
| -
|
| - // Abort any current load unless we're navigating the current document to a new state object
|
| - HistoryItem* currentItem = m_mainFrame->loader()->history()->currentItem();
|
| - if (!item->stateObject() || !currentItem || item->documentSequenceNumber() != currentItem->documentSequenceNumber() || item == currentItem) {
|
| - // Define what to do with any open database connections. By default we stop them and terminate the database thread.
|
| - DatabasePolicy databasePolicy = DatabasePolicyStop;
|
|
|
| -#if ENABLE(DATABASE)
|
| - // If we're navigating the history via a fragment on the same document, then we do not want to stop databases.
|
| - const KURL& currentURL = m_mainFrame->loader()->url();
|
| - const KURL& newURL = item->url();
|
| -
|
| - if (newURL.hasFragmentIdentifier() && equalIgnoringFragmentIdentifier(currentURL, newURL))
|
| - databasePolicy = DatabasePolicyContinue;
|
| -#endif
|
| + if (m_mainFrame->loader()->history()->shouldStopLoadingForHistoryItem(item))
|
| + m_mainFrame->loader()->stopAllLoaders();
|
|
|
| - m_mainFrame->loader()->stopAllLoaders(databasePolicy);
|
| - }
|
| -
|
| m_mainFrame->loader()->history()->goToItem(item, type);
|
| }
|
|
|
|
|