зеркало из https://github.com/mozilla/gecko-dev.git
Send correct Referer when <base href> is involved. r+sr=bzbarsky a=bsmedberg b=300942
This commit is contained in:
Родитель
6945b22f8d
Коммит
a774ba681b
|
@ -367,6 +367,9 @@ protected:
|
||||||
// The URI to be used as a base for relative URIs.
|
// The URI to be used as a base for relative URIs.
|
||||||
nsCOMPtr<nsIURI> mBaseURL;
|
nsCOMPtr<nsIURI> mBaseURL;
|
||||||
|
|
||||||
|
// The URI to be used as an HTTP "Referer" and for error reporting.
|
||||||
|
nsCOMPtr<nsIURI> mSheetURL;
|
||||||
|
|
||||||
// The sheet we're parsing into
|
// The sheet we're parsing into
|
||||||
nsCOMPtr<nsICSSStyleSheet> mSheet;
|
nsCOMPtr<nsICSSStyleSheet> mSheet;
|
||||||
|
|
||||||
|
@ -583,6 +586,7 @@ CSSParserImpl::InitScanner(nsIUnicharInputStream* aInput, nsIURI* aSheetURI,
|
||||||
mScannerInited = PR_TRUE;
|
mScannerInited = PR_TRUE;
|
||||||
#endif
|
#endif
|
||||||
mBaseURL = aBaseURI;
|
mBaseURL = aBaseURI;
|
||||||
|
mSheetURL = aSheetURI;
|
||||||
|
|
||||||
mHavePushBack = PR_FALSE;
|
mHavePushBack = PR_FALSE;
|
||||||
|
|
||||||
|
@ -613,6 +617,7 @@ CSSParserImpl::ReleaseScanner(void)
|
||||||
mScannerInited = PR_FALSE;
|
mScannerInited = PR_FALSE;
|
||||||
#endif
|
#endif
|
||||||
mBaseURL = nsnull;
|
mBaseURL = nsnull;
|
||||||
|
mSheetURL = nsnull;
|
||||||
return NS_OK;
|
return NS_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3899,7 +3904,7 @@ PRBool CSSParserImpl::ParseURL(nsresult& aErrorCode, nsCSSValue& aValue)
|
||||||
// Set a null value on failure. Most failure cases should be
|
// Set a null value on failure. Most failure cases should be
|
||||||
// NS_ERROR_MALFORMED_URI.
|
// NS_ERROR_MALFORMED_URI.
|
||||||
nsCSSValue::URL *url =
|
nsCSSValue::URL *url =
|
||||||
new nsCSSValue::URL(uri, tk->mIdent.get(), mBaseURL);
|
new nsCSSValue::URL(uri, tk->mIdent.get(), mSheetURL);
|
||||||
if (!url || !url->mString) {
|
if (!url || !url->mString) {
|
||||||
aErrorCode = NS_ERROR_OUT_OF_MEMORY;
|
aErrorCode = NS_ERROR_OUT_OF_MEMORY;
|
||||||
delete url;
|
delete url;
|
||||||
|
|
Загрузка…
Ссылка в новой задаче