Index: chrome/browser/download/download_manager.cc |
diff --git a/chrome/browser/download/download_manager.cc b/chrome/browser/download/download_manager.cc |
index c24f0964e8dcbfc67baaa3aa179b010a04004cfd..fa6f0adfafee7d1061d964c0993c28ea6144e058 100644 |
--- a/chrome/browser/download/download_manager.cc |
+++ b/chrome/browser/download/download_manager.cc |
@@ -33,6 +33,7 @@ |
#include "chrome/browser/tab_contents/tab_util.h" |
#include "chrome/browser/ui/browser.h" |
#include "chrome/common/chrome_paths.h" |
+#include "chrome/common/pref_names.h" |
#include "content/browser/browser_thread.h" |
#include "content/browser/renderer_host/render_process_host.h" |
#include "content/browser/renderer_host/render_view_host.h" |
@@ -846,12 +847,19 @@ void DownloadManager::DownloadUrl(const GURL& url, |
tab_contents); |
} |
-void DownloadManager::DownloadUrlToFile(const GURL& url, |
- const GURL& referrer, |
- const std::string& referrer_charset, |
- const DownloadSaveInfo& save_info, |
- TabContents* tab_contents) { |
+void DownloadManager::DownloadUrlToFile( |
+ const GURL& url, |
+ const GURL& passed_referrer, |
+ const std::string& passed_referrer_charset, |
+ const DownloadSaveInfo& save_info, |
+ TabContents* tab_contents) { |
DCHECK(tab_contents); |
+ GURL referrer; |
+ std::string referrer_charset; |
+ if (profile_->GetPrefs()->GetBoolean(prefs::kEnableReferrers)) { |
+ referrer = passed_referrer; |
+ referrer_charset = passed_referrer_charset; |
+ } |
BrowserThread::PostTask(BrowserThread::IO, FROM_HERE, |
NewRunnableFunction(&download_util::DownloadUrl, |
url, |