Title: [186828] trunk/Source/WebCore
- Revision
- 186828
- Author
- [email protected]
- Date
- 2015-07-14 19:12:16 -0700 (Tue, 14 Jul 2015)
Log Message
Don't persist history item tree for subframes across reloads.
<https://webkit.org/b/146937>
<rdar://problem/19925709>
Reviewed by Brady Eidson.
Throw away the subframe history items when reloading a page. This ensures that we
don't accumulate outdated frame metadata when subframes change name across page loads.
Since the history item tree is encoded in the UA session state and gets serialized to
disk, it's important that we don't let it grow unbounded.
* loader/HistoryController.cpp:
(WebCore::HistoryController::updateForReload):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (186827 => 186828)
--- trunk/Source/WebCore/ChangeLog 2015-07-15 00:23:41 UTC (rev 186827)
+++ trunk/Source/WebCore/ChangeLog 2015-07-15 02:12:16 UTC (rev 186828)
@@ -1,3 +1,19 @@
+2015-07-14 Andreas Kling <[email protected]>
+
+ Don't persist history item tree for subframes across reloads.
+ <https://webkit.org/b/146937>
+ <rdar://problem/19925709>
+
+ Reviewed by Brady Eidson.
+
+ Throw away the subframe history items when reloading a page. This ensures that we
+ don't accumulate outdated frame metadata when subframes change name across page loads.
+ Since the history item tree is encoded in the UA session state and gets serialized to
+ disk, it's important that we don't let it grow unbounded.
+
+ * loader/HistoryController.cpp:
+ (WebCore::HistoryController::updateForReload):
+
2015-07-14 Antti Koivisto <[email protected]>
REGRESSION (r177876): store.apple.com profile and cart icons are missing
Modified: trunk/Source/WebCore/loader/HistoryController.cpp (186827 => 186828)
--- trunk/Source/WebCore/loader/HistoryController.cpp 2015-07-15 00:23:41 UTC (rev 186827)
+++ trunk/Source/WebCore/loader/HistoryController.cpp 2015-07-15 02:12:16 UTC (rev 186828)
@@ -342,6 +342,9 @@
if (m_frame.loader().loadType() == FrameLoadType::Reload || m_frame.loader().loadType() == FrameLoadType::ReloadFromOrigin)
saveScrollPositionAndViewStateToItem(m_currentItem.get());
+
+ // Rebuild the history item tree when reloading as trying to re-associate everything is too error-prone.
+ m_currentItem->clearChildren();
}
// When reloading the page, we may end up redirecting to a different URL
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes