зеркало из https://github.com/mozilla/gecko-dev.git
Backed out changeset 10a3cbe9e42f (bug 1093611) for w4 test failures
This commit is contained in:
Родитель
687869c8ec
Коммит
dc5652d0b1
|
@ -441,10 +441,8 @@ Link::GetHash(nsAString &_hash, ErrorResult& aError)
|
||||||
nsAutoCString ref;
|
nsAutoCString ref;
|
||||||
nsresult rv = uri->GetRef(ref);
|
nsresult rv = uri->GetRef(ref);
|
||||||
if (NS_SUCCEEDED(rv) && !ref.IsEmpty()) {
|
if (NS_SUCCEEDED(rv) && !ref.IsEmpty()) {
|
||||||
|
NS_UnescapeURL(ref); // XXX may result in random non-ASCII bytes!
|
||||||
_hash.Assign(char16_t('#'));
|
_hash.Assign(char16_t('#'));
|
||||||
if (!nsContentUtils::ShouldEncodeURLHash()) {
|
|
||||||
NS_UnescapeURL(ref); // XXX may result in random non-ASCII bytes!
|
|
||||||
}
|
|
||||||
AppendUTF8toUTF16(ref, _hash);
|
AppendUTF8toUTF16(ref, _hash);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -514,10 +514,8 @@ URL::GetHash(nsString& aHash, ErrorResult& aRv) const
|
||||||
nsAutoCString ref;
|
nsAutoCString ref;
|
||||||
nsresult rv = mURI->GetRef(ref);
|
nsresult rv = mURI->GetRef(ref);
|
||||||
if (NS_SUCCEEDED(rv) && !ref.IsEmpty()) {
|
if (NS_SUCCEEDED(rv) && !ref.IsEmpty()) {
|
||||||
|
NS_UnescapeURL(ref); // XXX may result in random non-ASCII bytes!
|
||||||
aHash.Assign(char16_t('#'));
|
aHash.Assign(char16_t('#'));
|
||||||
if (!nsContentUtils::ShouldEncodeURLHash()) {
|
|
||||||
NS_UnescapeURL(ref); // XXX may result in random non-ASCII bytes!
|
|
||||||
}
|
|
||||||
AppendUTF8toUTF16(ref, aHash);
|
AppendUTF8toUTF16(ref, aHash);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -236,7 +236,6 @@ bool nsContentUtils::sFullscreenApiIsContentOnly = false;
|
||||||
bool nsContentUtils::sIsPerformanceTimingEnabled = false;
|
bool nsContentUtils::sIsPerformanceTimingEnabled = false;
|
||||||
bool nsContentUtils::sIsResourceTimingEnabled = false;
|
bool nsContentUtils::sIsResourceTimingEnabled = false;
|
||||||
bool nsContentUtils::sIsExperimentalAutocompleteEnabled = false;
|
bool nsContentUtils::sIsExperimentalAutocompleteEnabled = false;
|
||||||
bool nsContentUtils::sEncodeURLHash = true;
|
|
||||||
|
|
||||||
uint32_t nsContentUtils::sHandlingInputTimeout = 1000;
|
uint32_t nsContentUtils::sHandlingInputTimeout = 1000;
|
||||||
|
|
||||||
|
@ -514,9 +513,6 @@ nsContentUtils::Init()
|
||||||
Preferences::AddBoolVarCache(&sIsExperimentalAutocompleteEnabled,
|
Preferences::AddBoolVarCache(&sIsExperimentalAutocompleteEnabled,
|
||||||
"dom.forms.autocomplete.experimental", false);
|
"dom.forms.autocomplete.experimental", false);
|
||||||
|
|
||||||
Preferences::AddBoolVarCache(&sEncodeURLHash,
|
|
||||||
"dom.url.encode_hash", true);
|
|
||||||
|
|
||||||
Preferences::AddUintVarCache(&sHandlingInputTimeout,
|
Preferences::AddUintVarCache(&sHandlingInputTimeout,
|
||||||
"dom.event.handling-user-input-time-limit",
|
"dom.event.handling-user-input-time-limit",
|
||||||
1000);
|
1000);
|
||||||
|
|
|
@ -1853,11 +1853,6 @@ public:
|
||||||
return sIsResourceTimingEnabled;
|
return sIsResourceTimingEnabled;
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool ShouldEncodeURLHash()
|
|
||||||
{
|
|
||||||
return sEncodeURLHash;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns true if the doc tree branch which contains aDoc contains any
|
* Returns true if the doc tree branch which contains aDoc contains any
|
||||||
* plugins which we don't control event dispatch for, i.e. do any plugins
|
* plugins which we don't control event dispatch for, i.e. do any plugins
|
||||||
|
@ -2309,7 +2304,6 @@ private:
|
||||||
static bool sIsPerformanceTimingEnabled;
|
static bool sIsPerformanceTimingEnabled;
|
||||||
static bool sIsResourceTimingEnabled;
|
static bool sIsResourceTimingEnabled;
|
||||||
static bool sIsExperimentalAutocompleteEnabled;
|
static bool sIsExperimentalAutocompleteEnabled;
|
||||||
static bool sEncodeURLHash;
|
|
||||||
|
|
||||||
static nsHtml5StringParser* sHTMLFragmentParser;
|
static nsHtml5StringParser* sHTMLFragmentParser;
|
||||||
static nsIParser* sXMLFragmentParser;
|
static nsIParser* sXMLFragmentParser;
|
||||||
|
|
|
@ -298,36 +298,28 @@ nsLocation::GetHash(nsAString& aHash)
|
||||||
nsAutoString unicodeRef;
|
nsAutoString unicodeRef;
|
||||||
|
|
||||||
rv = uri->GetRef(ref);
|
rv = uri->GetRef(ref);
|
||||||
|
if (NS_SUCCEEDED(rv)) {
|
||||||
|
nsCOMPtr<nsITextToSubURI> textToSubURI(
|
||||||
|
do_GetService(NS_ITEXTTOSUBURI_CONTRACTID, &rv));
|
||||||
|
|
||||||
if (!nsContentUtils::ShouldEncodeURLHash()) {
|
|
||||||
if (NS_SUCCEEDED(rv)) {
|
if (NS_SUCCEEDED(rv)) {
|
||||||
nsCOMPtr<nsITextToSubURI> textToSubURI(
|
nsAutoCString charset;
|
||||||
do_GetService(NS_ITEXTTOSUBURI_CONTRACTID, &rv));
|
uri->GetOriginCharset(charset);
|
||||||
|
|
||||||
if (NS_SUCCEEDED(rv)) {
|
rv = textToSubURI->UnEscapeURIForUI(charset, ref, unicodeRef);
|
||||||
nsAutoCString charset;
|
|
||||||
uri->GetOriginCharset(charset);
|
|
||||||
|
|
||||||
rv = textToSubURI->UnEscapeURIForUI(charset, ref, unicodeRef);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (NS_FAILED(rv)) {
|
|
||||||
// Oh, well. No intl here!
|
|
||||||
NS_UnescapeURL(ref);
|
|
||||||
CopyASCIItoUTF16(ref, unicodeRef);
|
|
||||||
rv = NS_OK;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (NS_FAILED(rv)) {
|
||||||
|
// Oh, well. No intl here!
|
||||||
|
NS_UnescapeURL(ref);
|
||||||
|
CopyASCIItoUTF16(ref, unicodeRef);
|
||||||
|
rv = NS_OK;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (NS_SUCCEEDED(rv) && !unicodeRef.IsEmpty()) {
|
if (NS_SUCCEEDED(rv) && !unicodeRef.IsEmpty()) {
|
||||||
aHash.Assign(char16_t('#'));
|
aHash.Assign(char16_t('#'));
|
||||||
aHash.Append(unicodeRef);
|
aHash.Append(unicodeRef);
|
||||||
}
|
|
||||||
} else { // URL Hash should be encoded
|
|
||||||
if (NS_SUCCEEDED(rv) && !ref.IsEmpty()) {
|
|
||||||
aHash.Assign(char16_t('#'));
|
|
||||||
AppendASCIItoUTF16(ref, aHash);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (aHash == mCachedHash) {
|
if (aHash == mCachedHash) {
|
||||||
|
|
|
@ -161,9 +161,6 @@ pref("dom.webcrypto.enabled", true);
|
||||||
// Whether the UndoManager API is enabled
|
// Whether the UndoManager API is enabled
|
||||||
pref("dom.undo_manager.enabled", false);
|
pref("dom.undo_manager.enabled", false);
|
||||||
|
|
||||||
// Whether URL,nsLocation,Link::GetHash should be percent encoded.
|
|
||||||
pref("dom.url.encode_hash", true);
|
|
||||||
|
|
||||||
// Whether to run add-on code in different compartments from browser code. This
|
// Whether to run add-on code in different compartments from browser code. This
|
||||||
// causes a separate compartment for each (addon, global) combination, which may
|
// causes a separate compartment for each (addon, global) combination, which may
|
||||||
// significantly increase the number of compartments in the system.
|
// significantly increase the number of compartments in the system.
|
||||||
|
|
Загрузка…
Ссылка в новой задаче