diff --git a/htmlparser/src/nsParser.cpp b/htmlparser/src/nsParser.cpp index 3c61b2f5d1a9..b7a79edeeab3 100644 --- a/htmlparser/src/nsParser.cpp +++ b/htmlparser/src/nsParser.cpp @@ -327,6 +327,8 @@ void nsParser::SetCommand(const char* aCommand){ void nsParser::SetDocumentCharset(nsString& aCharset, nsCharsetSource aCharsetSource){ mCharset = aCharset; mCharsetSource = aCharsetSource; + if(mParserContext && mParserContext->mScanner) + mParserContext->mScanner->SetDocumentCharset(aCharset, aCharsetSource); } /** @@ -1344,7 +1346,6 @@ nsresult nsParser::OnDataAvailable(nsIChannel* channel, nsISupports* aContext, printf("xmlencoding detect- %s\n", guess.ToNewCString()); #endif this->SetDocumentCharset(guess, guessSource); - mParserContext->mScanner->SetDocumentCharset(guess, guessSource); } } theTotalRead+=theNumRead; diff --git a/parser/htmlparser/src/nsParser.cpp b/parser/htmlparser/src/nsParser.cpp index 3c61b2f5d1a9..b7a79edeeab3 100644 --- a/parser/htmlparser/src/nsParser.cpp +++ b/parser/htmlparser/src/nsParser.cpp @@ -327,6 +327,8 @@ void nsParser::SetCommand(const char* aCommand){ void nsParser::SetDocumentCharset(nsString& aCharset, nsCharsetSource aCharsetSource){ mCharset = aCharset; mCharsetSource = aCharsetSource; + if(mParserContext && mParserContext->mScanner) + mParserContext->mScanner->SetDocumentCharset(aCharset, aCharsetSource); } /** @@ -1344,7 +1346,6 @@ nsresult nsParser::OnDataAvailable(nsIChannel* channel, nsISupports* aContext, printf("xmlencoding detect- %s\n", guess.ToNewCString()); #endif this->SetDocumentCharset(guess, guessSource); - mParserContext->mScanner->SetDocumentCharset(guess, guessSource); } } theTotalRead+=theNumRead;