summaryrefslogtreecommitdiffstats
path: root/Source/WebKit/android/WebCoreSupport
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebKit/android/WebCoreSupport')
-rw-r--r--Source/WebKit/android/WebCoreSupport/WebRequest.cpp7
-rw-r--r--Source/WebKit/android/WebCoreSupport/WebRequest.h2
-rw-r--r--Source/WebKit/android/WebCoreSupport/WebUrlLoaderClient.cpp2
3 files changed, 10 insertions, 1 deletions
diff --git a/Source/WebKit/android/WebCoreSupport/WebRequest.cpp b/Source/WebKit/android/WebCoreSupport/WebRequest.cpp
index 9d16378..dda0ee1 100644
--- a/Source/WebKit/android/WebCoreSupport/WebRequest.cpp
+++ b/Source/WebKit/android/WebCoreSupport/WebRequest.cpp
@@ -83,6 +83,7 @@ WebRequest::WebRequest(WebUrlLoaderClient* loader, const WebResourceRequest& web
: m_urlLoader(loader)
, m_url(webResourceRequest.url())
, m_userAgent(webResourceRequest.userAgent())
+ , m_referer(webResourceRequest.referrer())
, m_loadState(Created)
, m_authRequestCount(0)
, m_cacheMode(0)
@@ -109,6 +110,7 @@ WebRequest::WebRequest(WebUrlLoaderClient* loader, const WebResourceRequest& web
, m_interceptResponse(intercept)
, m_url(webResourceRequest.url())
, m_userAgent(webResourceRequest.userAgent())
+ , m_referer(webResourceRequest.referrer())
, m_loadState(Created)
, m_authRequestCount(0)
, m_cacheMode(0)
@@ -136,6 +138,11 @@ const std::string& WebRequest::getUserAgent() const
return m_userAgent;
}
+const std::string& WebRequest::getReferer() const
+{
+ return m_referer;
+}
+
#ifdef LOG_REQUESTS
namespace {
int remaining = 0;
diff --git a/Source/WebKit/android/WebCoreSupport/WebRequest.h b/Source/WebKit/android/WebCoreSupport/WebRequest.h
index d9054e9..4a4e10b 100644
--- a/Source/WebKit/android/WebCoreSupport/WebRequest.h
+++ b/Source/WebKit/android/WebCoreSupport/WebRequest.h
@@ -89,6 +89,7 @@ public:
const std::string& getUrl() const;
const std::string& getUserAgent() const;
+ const std::string& getReferer() const;
void setSync(bool sync) { m_isSync = sync; }
private:
@@ -109,6 +110,7 @@ private:
scoped_ptr<UrlInterceptResponse> m_interceptResponse;
std::string m_url;
std::string m_userAgent;
+ std::string m_referer;
LoadState m_loadState;
int m_authRequestCount;
int m_cacheMode;
diff --git a/Source/WebKit/android/WebCoreSupport/WebUrlLoaderClient.cpp b/Source/WebKit/android/WebCoreSupport/WebUrlLoaderClient.cpp
index 5df0ed2..003b334 100644
--- a/Source/WebKit/android/WebCoreSupport/WebUrlLoaderClient.cpp
+++ b/Source/WebKit/android/WebCoreSupport/WebUrlLoaderClient.cpp
@@ -245,7 +245,7 @@ void WebUrlLoaderClient::downloadFile()
if (m_response) {
std::string contentDisposition;
m_response->getHeader("content-disposition", &contentDisposition);
- m_webFrame->downloadStart(m_response->getUrl(), m_request->getUserAgent(), contentDisposition, m_response->getMimeType(), m_response->getExpectedSize());
+ m_webFrame->downloadStart(m_response->getUrl(), m_request->getUserAgent(), contentDisposition, m_response->getMimeType(), m_request->getReferer(), m_response->getExpectedSize());
m_isCertMimeType = isMimeTypeForCert(m_response->getMimeType());
// Currently, only certificate mime type needs to receive the data.