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.