diff --git a/mozilla/htmlparser/src/CNavDTD.cpp b/mozilla/htmlparser/src/CNavDTD.cpp index 32c66e16261..7a9ada1608f 100644 --- a/mozilla/htmlparser/src/CNavDTD.cpp +++ b/mozilla/htmlparser/src/CNavDTD.cpp @@ -1105,11 +1105,7 @@ nsresult CNavDTD::WillHandleStartTag(CToken* aToken,eHTMLTags aTag,nsCParserNode CObserverService* theService=mParser->GetObserverService(); if(theService) { - CParserContext* pc=mParser->PeekContext(); - void* theDocID=(pc)? pc->mKey:0; - const nsISupportsParserBundle* bundle=mParser->GetParserBundle(); - result=theService->Notify(aTag,aNode,(void*)bundle, NS_ConvertToString(kHTMLTextContentType), mParser); } } diff --git a/mozilla/htmlparser/src/nsDTDUtils.cpp b/mozilla/htmlparser/src/nsDTDUtils.cpp index 790b78f6116..40b196980d3 100644 --- a/mozilla/htmlparser/src/nsDTDUtils.cpp +++ b/mozilla/htmlparser/src/nsDTDUtils.cpp @@ -856,7 +856,7 @@ CToken* CTokenRecycler::CreateTokenOfType(eHTMLTokenTypes aType,eHTMLTags aTag) CNodeRecycler::CNodeRecycler(): mSharedNodes(0) { - MOZ_COUNT_CTOR(CTokenRecycler); + MOZ_COUNT_CTOR(CNodeRecycler); #ifdef NS_DEBUG gNodeCount=0; @@ -865,7 +865,7 @@ CNodeRecycler::CNodeRecycler(): mSharedNodes(0) { CNodeRecycler::~CNodeRecycler() { - MOZ_COUNT_DTOR(CTokenRecycler); + MOZ_COUNT_DTOR(CNodeRecycler); nsCParserNode* theNode=0; diff --git a/mozilla/htmlparser/src/nsParser.cpp b/mozilla/htmlparser/src/nsParser.cpp index 59828078936..11e728aae2d 100644 --- a/mozilla/htmlparser/src/nsParser.cpp +++ b/mozilla/htmlparser/src/nsParser.cpp @@ -1049,9 +1049,13 @@ void nsParser::SetUnusedInput(nsString& aBuffer) { */ nsresult nsParser::Terminate(void){ nsresult result=NS_OK; - if(mParserContext && mParserContext->mDTD) + if(mParserContext && mParserContext->mDTD) { result=mParserContext->mDTD->Terminate(); - mInternalState=result; + if(result==NS_ERROR_HTMLPARSER_STOPPARSING) { + mInternalState=result; + result=DidBuildModel(result); + } + } return result; } diff --git a/mozilla/htmlparser/src/nsParser.h b/mozilla/htmlparser/src/nsParser.h index 9135537635c..0d4db268fda 100644 --- a/mozilla/htmlparser/src/nsParser.h +++ b/mozilla/htmlparser/src/nsParser.h @@ -428,7 +428,7 @@ public: NS_DECL_ISUPPORTS nsParserBundle (); - ~nsParserBundle (); + virtual ~nsParserBundle (); /** * Retrieve data from the bundle by IID. diff --git a/mozilla/parser/htmlparser/src/CNavDTD.cpp b/mozilla/parser/htmlparser/src/CNavDTD.cpp index 32c66e16261..7a9ada1608f 100644 --- a/mozilla/parser/htmlparser/src/CNavDTD.cpp +++ b/mozilla/parser/htmlparser/src/CNavDTD.cpp @@ -1105,11 +1105,7 @@ nsresult CNavDTD::WillHandleStartTag(CToken* aToken,eHTMLTags aTag,nsCParserNode CObserverService* theService=mParser->GetObserverService(); if(theService) { - CParserContext* pc=mParser->PeekContext(); - void* theDocID=(pc)? pc->mKey:0; - const nsISupportsParserBundle* bundle=mParser->GetParserBundle(); - result=theService->Notify(aTag,aNode,(void*)bundle, NS_ConvertToString(kHTMLTextContentType), mParser); } } diff --git a/mozilla/parser/htmlparser/src/nsDTDUtils.cpp b/mozilla/parser/htmlparser/src/nsDTDUtils.cpp index 790b78f6116..40b196980d3 100644 --- a/mozilla/parser/htmlparser/src/nsDTDUtils.cpp +++ b/mozilla/parser/htmlparser/src/nsDTDUtils.cpp @@ -856,7 +856,7 @@ CToken* CTokenRecycler::CreateTokenOfType(eHTMLTokenTypes aType,eHTMLTags aTag) CNodeRecycler::CNodeRecycler(): mSharedNodes(0) { - MOZ_COUNT_CTOR(CTokenRecycler); + MOZ_COUNT_CTOR(CNodeRecycler); #ifdef NS_DEBUG gNodeCount=0; @@ -865,7 +865,7 @@ CNodeRecycler::CNodeRecycler(): mSharedNodes(0) { CNodeRecycler::~CNodeRecycler() { - MOZ_COUNT_DTOR(CTokenRecycler); + MOZ_COUNT_DTOR(CNodeRecycler); nsCParserNode* theNode=0; diff --git a/mozilla/parser/htmlparser/src/nsParser.cpp b/mozilla/parser/htmlparser/src/nsParser.cpp index 59828078936..11e728aae2d 100644 --- a/mozilla/parser/htmlparser/src/nsParser.cpp +++ b/mozilla/parser/htmlparser/src/nsParser.cpp @@ -1049,9 +1049,13 @@ void nsParser::SetUnusedInput(nsString& aBuffer) { */ nsresult nsParser::Terminate(void){ nsresult result=NS_OK; - if(mParserContext && mParserContext->mDTD) + if(mParserContext && mParserContext->mDTD) { result=mParserContext->mDTD->Terminate(); - mInternalState=result; + if(result==NS_ERROR_HTMLPARSER_STOPPARSING) { + mInternalState=result; + result=DidBuildModel(result); + } + } return result; } diff --git a/mozilla/parser/htmlparser/src/nsParser.h b/mozilla/parser/htmlparser/src/nsParser.h index 9135537635c..0d4db268fda 100644 --- a/mozilla/parser/htmlparser/src/nsParser.h +++ b/mozilla/parser/htmlparser/src/nsParser.h @@ -428,7 +428,7 @@ public: NS_DECL_ISUPPORTS nsParserBundle (); - ~nsParserBundle (); + virtual ~nsParserBundle (); /** * Retrieve data from the bundle by IID.