Bug 1445541 - Enable the character encoding menu when the document is decoded as UTF-8 and an error is found, instead of disabling it when no errors are found. r=hsivonen
MozReview-Commit-ID: 1e6kQbAxcqm
This commit is contained in:
@@ -835,7 +835,12 @@ nsHtml5StreamParser::WriteStreamBytes(const uint8_t* aFromSegment,
|
||||
bool hadErrors;
|
||||
Tie(result, read, written, hadErrors) =
|
||||
mUnicodeDecoder->DecodeToUTF16(src, dst, false);
|
||||
mHasHadErrors |= hadErrors;
|
||||
if (hadErrors && !mHasHadErrors) {
|
||||
mHasHadErrors = true;
|
||||
if (mEncoding == UTF_8_ENCODING) {
|
||||
mTreeBuilder->TryToEnableEncodingMenu();
|
||||
}
|
||||
}
|
||||
src = src.From(read);
|
||||
totalRead += read;
|
||||
mLastBuffer->AdvanceEnd(written);
|
||||
@@ -1086,7 +1091,12 @@ nsHtml5StreamParser::DoStopRequest()
|
||||
bool hadErrors;
|
||||
Tie(result, read, written, hadErrors) =
|
||||
mUnicodeDecoder->DecodeToUTF16(src, dst, true);
|
||||
mHasHadErrors |= hadErrors;
|
||||
if (hadErrors && !mHasHadErrors) {
|
||||
mHasHadErrors = true;
|
||||
if (mEncoding == UTF_8_ENCODING) {
|
||||
mTreeBuilder->TryToEnableEncodingMenu();
|
||||
}
|
||||
}
|
||||
MOZ_ASSERT(read == 0, "How come an empty span was read form?");
|
||||
mLastBuffer->AdvanceEnd(written);
|
||||
if (result == kOutputFull) {
|
||||
@@ -1442,9 +1452,6 @@ nsHtml5StreamParser::ParseAvailableData()
|
||||
return;
|
||||
}
|
||||
mAtEOF = true;
|
||||
if (mEncoding == UTF_8_ENCODING && !mHasHadErrors) {
|
||||
mTreeBuilder->TryToDisableEncodingMenu();
|
||||
}
|
||||
if (mCharsetSource < kCharsetFromMetaTag) {
|
||||
if (mInitialEncodingWasFromParentFrame) {
|
||||
// Unfortunately, this check doesn't take effect for
|
||||
|
||||
Reference in New Issue
Block a user