summaryrefslogtreecommitdiffstats
path: root/WebCore/history/BackForwardList.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'WebCore/history/BackForwardList.cpp')
-rw-r--r--WebCore/history/BackForwardList.cpp20
1 files changed, 13 insertions, 7 deletions
diff --git a/WebCore/history/BackForwardList.cpp b/WebCore/history/BackForwardList.cpp
index 721d949..656cce2 100644
--- a/WebCore/history/BackForwardList.cpp
+++ b/WebCore/history/BackForwardList.cpp
@@ -82,13 +82,15 @@ void BackForwardList::addItem(PassRefPtr<HistoryItem> prpItem)
m_entryHash.remove(item);
pageCache()->remove(item.get());
m_current--;
- m_page->mainFrame()->loader()->client()->dispatchDidRemoveBackForwardItem(item.get());
+ if (m_page)
+ m_page->mainFrame()->loader()->client()->dispatchDidRemoveBackForwardItem(item.get());
}
-
+
m_entryHash.add(prpItem.get());
m_entries.insert(m_current + 1, prpItem);
m_current++;
- m_page->mainFrame()->loader()->client()->dispatchDidAddBackForwardItem(currentItem());
+ if (m_page)
+ m_page->mainFrame()->loader()->client()->dispatchDidAddBackForwardItem(currentItem());
}
void BackForwardList::goBack()
@@ -96,7 +98,8 @@ void BackForwardList::goBack()
ASSERT(m_current > 0);
if (m_current > 0) {
m_current--;
- m_page->mainFrame()->loader()->client()->dispatchDidChangeBackForwardIndex();
+ if (m_page)
+ m_page->mainFrame()->loader()->client()->dispatchDidChangeBackForwardIndex();
}
}
@@ -105,7 +108,8 @@ void BackForwardList::goForward()
ASSERT(m_current < m_entries.size() - 1);
if (m_current < m_entries.size() - 1) {
m_current++;
- m_page->mainFrame()->loader()->client()->dispatchDidChangeBackForwardIndex();
+ if (m_page)
+ m_page->mainFrame()->loader()->client()->dispatchDidChangeBackForwardIndex();
}
}
@@ -120,7 +124,8 @@ void BackForwardList::goToItem(HistoryItem* item)
break;
if (index < m_entries.size()) {
m_current = index;
- m_page->mainFrame()->loader()->client()->dispatchDidChangeBackForwardIndex();
+ if (m_page)
+ m_page->mainFrame()->loader()->client()->dispatchDidChangeBackForwardIndex();
}
}
@@ -189,7 +194,8 @@ void BackForwardList::setCapacity(int size)
m_current = NoCurrentItemIndex;
else if (m_current > m_entries.size() - 1) {
m_current = m_entries.size() - 1;
- m_page->mainFrame()->loader()->client()->dispatchDidChangeBackForwardIndex();
+ if (m_page)
+ m_page->mainFrame()->loader()->client()->dispatchDidChangeBackForwardIndex();
}
m_capacity = size;
}