From 20be06a0d4f97600c3ded0b0da96e0789bcbc7ef Mon Sep 17 00:00:00 2001 From: "cata%netscape.com" Date: Thu, 22 Jun 2000 00:41:02 +0000 Subject: [PATCH] Turning on charset override by default. r=nhotta a=ftang bug #41620. git-svn-id: svn://10.0.0.236/trunk@72851 18797224-902f-48f8-a5cc-f745e15eee43 --- .../content/html/document/src/nsHTMLDocument.cpp | 14 ++------------ mozilla/intl/chardet/src/nsDocumentCharsetInfo.cpp | 1 + .../layout/html/document/src/nsHTMLDocument.cpp | 14 ++------------ 3 files changed, 5 insertions(+), 24 deletions(-) diff --git a/mozilla/content/html/document/src/nsHTMLDocument.cpp b/mozilla/content/html/document/src/nsHTMLDocument.cpp index edba2841b73..cb6432ee0c7 100644 --- a/mozilla/content/html/document/src/nsHTMLDocument.cpp +++ b/mozilla/content/html/document/src/nsHTMLDocument.cpp @@ -599,17 +599,6 @@ nsHTMLDocument::StartDocumentLoad(const char* aCommand, nsCOMPtr dcInfo; docShell->GetDocumentCharsetInfo(getter_AddRefs(dcInfo)); - PRBool override = PR_FALSE; - - nsCOMPtr prf(do_GetService(NS_PREF_PROGID)); - if (prf) { - char * toOverride = nsnull; - if(NS_SUCCEEDED(prf->CopyCharPref("intl.charset.override", &toOverride))) - { - if (toOverride[0] != 0) override = PR_TRUE; - PR_FREEIF(toOverride); - } - } // // The following logic is mirrored in nsWebShell::Embed! @@ -699,12 +688,13 @@ nsHTMLDocument::StartDocumentLoad(const char* aCommand, Recycle(forceCharsetFromWebShell); //TODO: we should define appropriate constant for force charset charsetSource = kCharsetFromPreviousLoading; - } else if ((dcInfo.get() != NULL) && (override)) { + } else if (dcInfo) { nsCOMPtr csAtom; dcInfo->GetForcedCharset(getter_AddRefs(csAtom)); if (csAtom.get() != NULL) { csAtom->ToString(charset); charsetSource = kCharsetFromPreviousLoading; + dcInfo->SetForcedCharset(NULL); } } } diff --git a/mozilla/intl/chardet/src/nsDocumentCharsetInfo.cpp b/mozilla/intl/chardet/src/nsDocumentCharsetInfo.cpp index 89da249de30..d30d968f4b6 100644 --- a/mozilla/intl/chardet/src/nsDocumentCharsetInfo.cpp +++ b/mozilla/intl/chardet/src/nsDocumentCharsetInfo.cpp @@ -85,6 +85,7 @@ NS_IMETHODIMP nsDocumentCharsetInfo::SetForcedCharset(nsIAtom * aCharset) NS_IMETHODIMP nsDocumentCharsetInfo::GetForcedCharset(nsIAtom ** aResult) { *aResult = mForcedCharset; + if (mForcedCharset) NS_ADDREF(*aResult); return NS_OK; } diff --git a/mozilla/layout/html/document/src/nsHTMLDocument.cpp b/mozilla/layout/html/document/src/nsHTMLDocument.cpp index edba2841b73..cb6432ee0c7 100644 --- a/mozilla/layout/html/document/src/nsHTMLDocument.cpp +++ b/mozilla/layout/html/document/src/nsHTMLDocument.cpp @@ -599,17 +599,6 @@ nsHTMLDocument::StartDocumentLoad(const char* aCommand, nsCOMPtr dcInfo; docShell->GetDocumentCharsetInfo(getter_AddRefs(dcInfo)); - PRBool override = PR_FALSE; - - nsCOMPtr prf(do_GetService(NS_PREF_PROGID)); - if (prf) { - char * toOverride = nsnull; - if(NS_SUCCEEDED(prf->CopyCharPref("intl.charset.override", &toOverride))) - { - if (toOverride[0] != 0) override = PR_TRUE; - PR_FREEIF(toOverride); - } - } // // The following logic is mirrored in nsWebShell::Embed! @@ -699,12 +688,13 @@ nsHTMLDocument::StartDocumentLoad(const char* aCommand, Recycle(forceCharsetFromWebShell); //TODO: we should define appropriate constant for force charset charsetSource = kCharsetFromPreviousLoading; - } else if ((dcInfo.get() != NULL) && (override)) { + } else if (dcInfo) { nsCOMPtr csAtom; dcInfo->GetForcedCharset(getter_AddRefs(csAtom)); if (csAtom.get() != NULL) { csAtom->ToString(charset); charsetSource = kCharsetFromPreviousLoading; + dcInfo->SetForcedCharset(NULL); } } }