зеркало из https://github.com/mozilla/pjs.git
Fix to get old XML parser to see CDATASections again
This commit is contained in:
Родитель
de01a2e192
Коммит
25560aa5b0
|
@ -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);
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
|
@ -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);
|
||||
|
||||
};
|
||||
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
|
@ -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);
|
||||
|
||||
};
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче