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 6d91e4b6bd464383cfd861290d9e8fbf4d7aca67..296119c56aea6048a03510db60c1896bcf50542e 100644 |
--- a/content/browser/tab_contents/navigation_entry_impl.h |
+++ b/content/browser/tab_contents/navigation_entry_impl.h |
@@ -142,6 +142,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 |
@@ -190,6 +199,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. |
}; |