diff --git a/mozilla/htmlparser/src/nsHTMLTokenizer.cpp b/mozilla/htmlparser/src/nsHTMLTokenizer.cpp
index 49e2d1c17ef..fdb0d78ea35 100644
--- a/mozilla/htmlparser/src/nsHTMLTokenizer.cpp
+++ b/mozilla/htmlparser/src/nsHTMLTokenizer.cpp
@@ -122,7 +122,7 @@ nsHTMLTokenizer::~nsHTMLTokenizer(){
Here begins the real working methods for the tokenizer.
*******************************************************************/
-void AddToken(CToken*& aToken,nsresult aResult,nsDeque& aDeque) {
+void nsHTMLTokenizer::AddToken(CToken*& aToken,nsresult aResult,nsDeque& aDeque) {
if(aToken) {
if(NS_SUCCEEDED(aResult)) {
aDeque.Push(aToken);
diff --git a/mozilla/htmlparser/src/nsHTMLTokenizer.h b/mozilla/htmlparser/src/nsHTMLTokenizer.h
index 4bfd0af9bb0..6ef81f75350 100644
--- a/mozilla/htmlparser/src/nsHTMLTokenizer.h
+++ b/mozilla/htmlparser/src/nsHTMLTokenizer.h
@@ -79,8 +79,9 @@ protected:
virtual nsresult ConsumeContentToEndTag(PRUnichar aChar,eHTMLTags aChildTag,nsScanner& aScanner,CToken*& aToken);
virtual nsresult ConsumeProcessingInstruction(PRUnichar aChar,CToken*& aToken,nsScanner& aScanner);
-protected:
-
+protected:
+ static void AddToken(CToken*& aToken,nsresult aResult,nsDeque& aDeque);
+
nsDeque mTokenDeque;
PRBool mDoXMLEmptyTags;
};
diff --git a/mozilla/htmlparser/src/nsXMLTokenizer.cpp b/mozilla/htmlparser/src/nsXMLTokenizer.cpp
index c72058ebabc..9ff1fdc7ea4 100644
--- a/mozilla/htmlparser/src/nsXMLTokenizer.cpp
+++ b/mozilla/htmlparser/src/nsXMLTokenizer.cpp
@@ -190,7 +190,7 @@ nsresult ConsumeConditional(nsScanner& aScanner,const nsString& aMatchString,PRB
* @param anErrorCode: arg that will hold error condition
* @return new token or null
*/
-nsresult nsXMLTokenizer::ConsumeComment(PRUnichar aChar,nsScanner& aScanner,CToken*& aToken){
+nsresult nsXMLTokenizer::ConsumeComment(PRUnichar aChar,CToken*& aToken,nsScanner& aScanner){
nsresult result=NS_OK;
nsAutoString CDATAString("[CDATA[");
PRBool isCDATA = PR_FALSE;
@@ -209,6 +209,11 @@ nsresult nsXMLTokenizer::ConsumeComment(PRUnichar aChar,nsScanner& aScanner,CTok
}
}
+ if(aToken) {
+ result=aToken->Consume(aChar,aScanner);
+ AddToken(aToken,result,mTokenDeque);
+ }
+
return result;
}
diff --git a/mozilla/htmlparser/src/nsXMLTokenizer.h b/mozilla/htmlparser/src/nsXMLTokenizer.h
index a33cb9c245e..4ead37e946e 100644
--- a/mozilla/htmlparser/src/nsXMLTokenizer.h
+++ b/mozilla/htmlparser/src/nsXMLTokenizer.h
@@ -61,7 +61,7 @@ public:
protected:
virtual nsresult HandleSkippedContent(nsScanner& aScanner,CToken*& aToken);
- virtual nsresult ConsumeComment(PRUnichar aChar,nsScanner& aScanner,CToken*& aToken);
+ virtual nsresult ConsumeComment(PRUnichar aChar,CToken*& aToken,nsScanner& aScanner);
};
diff --git a/mozilla/parser/htmlparser/src/nsHTMLTokenizer.cpp b/mozilla/parser/htmlparser/src/nsHTMLTokenizer.cpp
index 49e2d1c17ef..fdb0d78ea35 100644
--- a/mozilla/parser/htmlparser/src/nsHTMLTokenizer.cpp
+++ b/mozilla/parser/htmlparser/src/nsHTMLTokenizer.cpp
@@ -122,7 +122,7 @@ nsHTMLTokenizer::~nsHTMLTokenizer(){
Here begins the real working methods for the tokenizer.
*******************************************************************/
-void AddToken(CToken*& aToken,nsresult aResult,nsDeque& aDeque) {
+void nsHTMLTokenizer::AddToken(CToken*& aToken,nsresult aResult,nsDeque& aDeque) {
if(aToken) {
if(NS_SUCCEEDED(aResult)) {
aDeque.Push(aToken);
diff --git a/mozilla/parser/htmlparser/src/nsHTMLTokenizer.h b/mozilla/parser/htmlparser/src/nsHTMLTokenizer.h
index 4bfd0af9bb0..6ef81f75350 100644
--- a/mozilla/parser/htmlparser/src/nsHTMLTokenizer.h
+++ b/mozilla/parser/htmlparser/src/nsHTMLTokenizer.h
@@ -79,8 +79,9 @@ protected:
virtual nsresult ConsumeContentToEndTag(PRUnichar aChar,eHTMLTags aChildTag,nsScanner& aScanner,CToken*& aToken);
virtual nsresult ConsumeProcessingInstruction(PRUnichar aChar,CToken*& aToken,nsScanner& aScanner);
-protected:
-
+protected:
+ static void AddToken(CToken*& aToken,nsresult aResult,nsDeque& aDeque);
+
nsDeque mTokenDeque;
PRBool mDoXMLEmptyTags;
};
diff --git a/mozilla/parser/htmlparser/src/nsXMLTokenizer.cpp b/mozilla/parser/htmlparser/src/nsXMLTokenizer.cpp
index c72058ebabc..9ff1fdc7ea4 100644
--- a/mozilla/parser/htmlparser/src/nsXMLTokenizer.cpp
+++ b/mozilla/parser/htmlparser/src/nsXMLTokenizer.cpp
@@ -190,7 +190,7 @@ nsresult ConsumeConditional(nsScanner& aScanner,const nsString& aMatchString,PRB
* @param anErrorCode: arg that will hold error condition
* @return new token or null
*/
-nsresult nsXMLTokenizer::ConsumeComment(PRUnichar aChar,nsScanner& aScanner,CToken*& aToken){
+nsresult nsXMLTokenizer::ConsumeComment(PRUnichar aChar,CToken*& aToken,nsScanner& aScanner){
nsresult result=NS_OK;
nsAutoString CDATAString("[CDATA[");
PRBool isCDATA = PR_FALSE;
@@ -209,6 +209,11 @@ nsresult nsXMLTokenizer::ConsumeComment(PRUnichar aChar,nsScanner& aScanner,CTok
}
}
+ if(aToken) {
+ result=aToken->Consume(aChar,aScanner);
+ AddToken(aToken,result,mTokenDeque);
+ }
+
return result;
}
diff --git a/mozilla/parser/htmlparser/src/nsXMLTokenizer.h b/mozilla/parser/htmlparser/src/nsXMLTokenizer.h
index a33cb9c245e..4ead37e946e 100644
--- a/mozilla/parser/htmlparser/src/nsXMLTokenizer.h
+++ b/mozilla/parser/htmlparser/src/nsXMLTokenizer.h
@@ -61,7 +61,7 @@ public:
protected:
virtual nsresult HandleSkippedContent(nsScanner& aScanner,CToken*& aToken);
- virtual nsresult ConsumeComment(PRUnichar aChar,nsScanner& aScanner,CToken*& aToken);
+ virtual nsresult ConsumeComment(PRUnichar aChar,CToken*& aToken,nsScanner& aScanner);
};