summaryrefslogtreecommitdiffstats
path: root/WebCore/plugins/PluginView.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'WebCore/plugins/PluginView.cpp')
-rw-r--r--WebCore/plugins/PluginView.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/WebCore/plugins/PluginView.cpp b/WebCore/plugins/PluginView.cpp
index dc2b832..aadf0d2 100644
--- a/WebCore/plugins/PluginView.cpp
+++ b/WebCore/plugins/PluginView.cpp
@@ -268,6 +268,12 @@ bool PluginView::start()
FrameLoadRequest frameLoadRequest;
frameLoadRequest.resourceRequest().setHTTPMethod("GET");
frameLoadRequest.resourceRequest().setURL(m_url);
+#ifdef ANDROID_PLUGINS
+ if (!SecurityOrigin::shouldHideReferrer(
+ m_url, m_parentFrame->loader()->outgoingReferrer()))
+ frameLoadRequest.resourceRequest().setHTTPReferrer(
+ m_parentFrame->loader()->outgoingReferrer());
+#endif
load(frameLoadRequest, false, 0);
}
@@ -601,6 +607,11 @@ NPError PluginView::getURLNotify(const char* url, const char* target, void* noti
frameLoadRequest.setFrameName(target);
frameLoadRequest.resourceRequest().setHTTPMethod("GET");
frameLoadRequest.resourceRequest().setURL(makeURL(m_baseURL, url));
+#ifdef ANDROID_PLUGINS
+ if (!SecurityOrigin::shouldHideReferrer(
+ frameLoadRequest.resourceRequest().url(), m_url))
+ frameLoadRequest.resourceRequest().setHTTPReferrer(m_url);
+#endif
return load(frameLoadRequest, true, notifyData);
}
@@ -612,6 +623,11 @@ NPError PluginView::getURL(const char* url, const char* target)
frameLoadRequest.setFrameName(target);
frameLoadRequest.resourceRequest().setHTTPMethod("GET");
frameLoadRequest.resourceRequest().setURL(makeURL(m_baseURL, url));
+#ifdef ANDROID_PLUGINS
+ if (!SecurityOrigin::shouldHideReferrer(
+ frameLoadRequest.resourceRequest().url(), m_url))
+ frameLoadRequest.resourceRequest().setHTTPReferrer(m_url);
+#endif
return load(frameLoadRequest, false, 0);
}