Index: Source/core/loader/FrameLoader.cpp |
diff --git a/Source/core/loader/FrameLoader.cpp b/Source/core/loader/FrameLoader.cpp |
index 4fe68ee12a71458aeb1607df8dab4fffa7d4ec5e..976bb2995878f68379c7c4b322b00409cd6c3e46 100644 |
--- a/Source/core/loader/FrameLoader.cpp |
+++ b/Source/core/loader/FrameLoader.cpp |
@@ -311,7 +311,7 @@ void FrameLoader::receivedFirstData() |
HistoryCommitType historyCommitType = loadTypeToCommitType(m_loadType); |
if (historyCommitType == StandardCommit && (m_documentLoader->urlForHistory().isEmpty() || (opener() && !m_currentItem && m_documentLoader->originalRequest().url().isEmpty()))) |
historyCommitType = HistoryInertCommit; |
- else if (historyCommitType == InitialCommitInChildFrame && (!m_frame->tree().top()->isLocalFrame() || MixedContentChecker::isMixedContent(m_frame->tree().top()->document()->securityOrigin(), m_documentLoader->url()))) |
+ else if (historyCommitType == InitialCommitInChildFrame && (!m_frame->tree().top()->isLocalFrame() || MixedContentChecker::isMixedContent(toLocalFrame(m_frame->tree().top())->document()->securityOrigin(), m_documentLoader->url()))) |
historyCommitType = HistoryInertCommit; |
setHistoryItemStateForCommit(historyCommitType); |
@@ -598,11 +598,14 @@ void FrameLoader::completed() |
{ |
RefPtr<LocalFrame> protect(m_frame); |
- for (LocalFrame* descendant = m_frame->tree().traverseNext(m_frame); descendant; descendant = descendant->tree().traverseNext(m_frame)) |
- descendant->navigationScheduler().startTimer(); |
+ for (Frame* descendant = m_frame->tree().traverseNext(m_frame); descendant; descendant = descendant->tree().traverseNext(m_frame)) { |
+ if (descendant->isLocalFrame()) |
+ toLocalFrame(descendant)->navigationScheduler().startTimer(); |
+ } |
- if (LocalFrame* parent = m_frame->tree().parent()) |
- parent->loader().checkCompleted(); |
+ Frame* parent = m_frame->tree().parent(); |
+ if (parent && parent->isLocalFrame()) |
+ toLocalFrame(parent)->loader().checkCompleted(); |
if (m_frame->view()) |
m_frame->view()->maintainScrollPositionAtAnchor(0); |