Index: android_webview/renderer/aw_content_renderer_client.cc |
diff --git a/android_webview/renderer/aw_content_renderer_client.cc b/android_webview/renderer/aw_content_renderer_client.cc |
index 20754a7156cdf43ad711b98db8ba4daffa74cafe..cb294a44b8d72c90a059f9bab21d9123324ba42e 100644 |
--- a/android_webview/renderer/aw_content_renderer_client.cc |
+++ b/android_webview/renderer/aw_content_renderer_client.cc |
@@ -92,7 +92,7 @@ void AwContentRendererClient::RenderThreadStarted() { |
bool AwContentRendererClient::HandleNavigation( |
content::RenderFrame* render_frame, |
bool is_content_initiated, |
- int opener_id, |
+ bool render_view_was_created_by_renderer, |
blink::WebFrame* frame, |
const blink::WebURLRequest& request, |
blink::WebNavigationType type, |
@@ -129,7 +129,14 @@ bool AwContentRendererClient::HandleNavigation( |
// use NavigationInterception throttle to handle the call as that can |
// be deferred until after the java side has been constructed. |
- if (opener_id != MSG_ROUTING_NONE) { |
+ // |
+ // TODO(nick): |render_view_was_created_by_renderer| was plumbed in to |
+ // preserve the existing code behavior, but it doesn't appear to be correct. |
+ // In particular, this value will be true for the initial navigation of a |
+ // RenderView created via window.open(), but it will also be true for all |
+ // subsequent navigations in that RenderView, no matter how they are |
+ // initiated. |
+ if (render_view_was_created_by_renderer) { |
return false; |
} |