diff --git a/dlls/mshtml/nsio.c b/dlls/mshtml/nsio.c
index cd6c21f254b..88164d03c71 100644
--- a/dlls/mshtml/nsio.c
+++ b/dlls/mshtml/nsio.c
@@ -1303,7 +1303,11 @@ static nsresult NSAPI nsChannel_SetReferrerWithPolicy(nsIHttpChannel *iface, nsI
nsChannel *This = impl_from_nsIHttpChannel(iface);
DWORD channel_scheme, referrer_scheme;
nsWineURI *referrer;
+ BSTR referrer_uri;
nsresult nsres;
+ HRESULT hres;
+
+ static const WCHAR refererW[] = {'R','e','f','e','r','e','r'};
TRACE("(%p)->(%p %d)\n", This, aReferrer, aReferrerPolicy);
@@ -1338,6 +1342,10 @@ static nsresult NSAPI nsChannel_SetReferrerWithPolicy(nsIHttpChannel *iface, nsI
return NS_OK;
}
+ hres = IUri_GetDisplayUri(referrer->uri, &referrer_uri);
+ if(SUCCEEDED(hres) )
+ set_http_header(&This->request_headers, refererW, sizeof(refererW)/sizeof(WCHAR), referrer_uri, SysStringLen(referrer_uri));
+
This->referrer = (nsIURI*)&referrer->nsIFileURL_iface;
return NS_OK;
}