Index: content/browser/tab_contents/navigation_entry_impl.h |
diff --git a/content/browser/tab_contents/navigation_entry_impl.h b/content/browser/tab_contents/navigation_entry_impl.h |
index c1c52e5e32691baacc63a7d1314b5984444714ca..3c0a77b3c077e9f5d467f9206b074913781b8ca9 100644 |
--- a/content/browser/tab_contents/navigation_entry_impl.h |
+++ b/content/browser/tab_contents/navigation_entry_impl.h |
@@ -143,6 +143,15 @@ class CONTENT_EXPORT NavigationEntryImpl |
return transferred_global_request_id_; |
} |
+ // Whether this (pending) navigation is reload across site instances. |
+ // Resets to false after commit. |
+ void set_is_cross_site_reload(bool is_cross_site_reload) { |
+ is_cross_site_reload_ = is_cross_site_reload; |
+ } |
+ bool is_cross_site_reload() const { |
+ return is_cross_site_reload_; |
+ } |
+ |
private: |
// WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING |
// Session/Tab restore save portions of this class so that it can be recreated |
@@ -191,6 +200,13 @@ class CONTENT_EXPORT NavigationEntryImpl |
// continues as normal. |
GlobalRequestID transferred_global_request_id_; |
+ // This is set to true when this entry is being reloaded and due to changes in |
+ // the state of the URL, it has to be reloaded in a different site instance. |
+ // In such case, we must treat it as an existing navigation in the new site |
+ // instance, instead of a new navigation. This value should not be persisted |
+ // and is not needed after the entry commits. |
+ bool is_cross_site_reload_; |
+ |
// Copy and assignment is explicitly allowed for this class. |
}; |