Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(90)

Unified Diff: content/public/browser/navigation_controller.h

Issue 273163003: Fix uses of NavigationEntries in RenderViewContextMenu. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Add test Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/public/browser/navigation_controller.h
diff --git a/content/public/browser/navigation_controller.h b/content/public/browser/navigation_controller.h
index 8c0596e7e2bf650dd5fa156e7051794efed581bb..c883e1e6fc01da2971532015288057c544c30671 100644
--- a/content/public/browser/navigation_controller.h
+++ b/content/public/browser/navigation_controller.h
@@ -220,22 +220,22 @@ class NavigationController {
// Active entry --------------------------------------------------------------
// THIS IS DEPRECATED. DO NOT USE. Use GetVisibleEntry instead.
+ // See http://crbug.com/273710.
//
// Returns the active entry, which is the transient entry if any, the pending
// entry if a navigation is in progress or the last committed entry otherwise.
// NOTE: This can be NULL!!
- //
- // If you are trying to get the current state of the NavigationController,
- // this is the method you will typically want to call. If you want to display
- // the active entry to the user (e.g., in the location bar), use
- // GetVisibleEntry instead.
virtual NavigationEntry* GetActiveEntry() const = 0;
- // Returns the same entry as GetActiveEntry, except that it ignores pending
- // history navigation entries. This should be used when displaying info to
- // the user, so that the location bar and other indicators do not update for
- // a back/forward navigation until the pending entry commits. This approach
- // guards against URL spoofs on slow history navigations.
+ // Returns the entry that should be displayed to the user in the address bar.
+ // This is the transient entry if any, the pending entry if a navigation is
+ // in progress *and* is safe to display to the user (see below), or the last
+ // committed entry otherwise.
+ // NOTE: This can be NULL if no entry has committed!
+ //
+ // A pending entry is safe to display if it started in the browser process or
+ // if it's a renderer-initiated navigation in a new tab which hasn't been
+ // accessed by another tab. (If it has been accessed, it risks a URL spoof.)
virtual NavigationEntry* GetVisibleEntry() const = 0;
// Returns the index from which we would go back/forward or reload. This is

Powered by Google App Engine
This is Rietveld 408576698