From ec33fbecc89649d839c8530c571b89c3ab86aaa5 Mon Sep 17 00:00:00 2001 From: "bzbarsky%mit.edu" Date: Tue, 2 Jul 2002 00:08:46 +0000 Subject: [PATCH] Expose document.referrer for image documents. Bug 155052, r=sicking, sr=jst --- content/html/document/src/nsImageDocument.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/content/html/document/src/nsImageDocument.cpp b/content/html/document/src/nsImageDocument.cpp index eb3e8ed55628..e508f684e7a7 100644 --- a/content/html/document/src/nsImageDocument.cpp +++ b/content/html/document/src/nsImageDocument.cpp @@ -276,6 +276,18 @@ nsImageDocument::StartDocumentLoad(const char* aCommand, return rv; } + nsCOMPtr httpChannel = do_QueryInterface(aChannel); + if (httpChannel) { + // The misspelled key 'referer' is as per the HTTP spec + nsCAutoString referrerHeader; + rv = httpChannel->GetRequestHeader(NS_LITERAL_CSTRING("referer"), + referrerHeader); + + if (NS_SUCCEEDED(rv)) { + SetReferrer(NS_ConvertASCIItoUCS2(referrerHeader)); + } + } + // Create synthetic document rv = CreateSyntheticDocument(); if (NS_OK != rv) {