Index: content/renderer/render_frame_impl.h |
diff --git a/content/renderer/render_frame_impl.h b/content/renderer/render_frame_impl.h |
index bfcb092bf96f5b63cad8961c82116408a94788dd..e164c853237a4f6117f6e59bba97d41ed47a069c 100644 |
--- a/content/renderer/render_frame_impl.h |
+++ b/content/renderer/render_frame_impl.h |
@@ -341,6 +341,12 @@ class CONTENT_EXPORT RenderFrameImpl |
friend class RenderFrameObserver; |
FRIEND_TEST_ALL_PREFIXES(RenderFrameImplTest, |
ShouldUpdateSelectionTextFromContextMenuParams); |
+ FRIEND_TEST_ALL_PREFIXES(RenderFrameImplTest, |
+ GetOriginalRequestUrlViaLoadData); |
+ FRIEND_TEST_ALL_PREFIXES(RenderFrameImplTest, |
+ GetOriginalRequestUrlViaLoadUrlWithoutRedirects); |
+ FRIEND_TEST_ALL_PREFIXES(RenderFrameImplTest, |
+ GetOriginalRequestUrlViaLoadUrlWithRedirects); |
typedef std::map<GURL, double> HostZoomLevels; |
@@ -371,6 +377,11 @@ class CONTENT_EXPORT RenderFrameImpl |
const gfx::Range& selection_range, |
const ContextMenuParams& params); |
+ // Returns the original request url. If there is no redirect, the original |
+ // url is the same as ds->request()->url(). If the WebDataSource belongs to a |
+ // frame was loaded by loadData, the original url will be ds->unreachableURL() |
+ static GURL GetOriginalRequestUrl(blink::WebDataSource* ds); |
+ |
// Stores the WebFrame we are associated with. |
blink::WebFrame* frame_; |