diff --git a/mozilla/htmlparser/src/nsHTMLParser.cpp b/mozilla/htmlparser/src/nsHTMLParser.cpp
index 95496bb2fd6..8e34742b38e 100644
--- a/mozilla/htmlparser/src/nsHTMLParser.cpp
+++ b/mozilla/htmlparser/src/nsHTMLParser.cpp
@@ -542,6 +542,12 @@ PRBool nsHTMLParser::HandleStartToken(CToken* aToken) {
result=mSink->SetTitle(attrNode.GetSkippedContent());
}
break;
+ case eHTMLTag_textarea:
+ {
+ CollectSkippedContent(attrNode);
+ result=AddLeaf(attrNode);
+ }
+ break;
case eHTMLTag_form:
result = mSink->OpenForm(attrNode);
break;
@@ -632,6 +638,7 @@ PRBool nsHTMLParser::HandleEndToken(CToken* aToken) {
case eHTMLTag_style:
case eHTMLTag_link:
case eHTMLTag_meta:
+ case eHTMLTag_textarea:
result=PR_TRUE;
break;
@@ -1069,6 +1076,8 @@ PRBool nsHTMLParser::CloseContainer(const nsIParserNode& aNode){
case eHTMLTag_style:
break;
+ case eHTMLTag_textarea:
+ break;
case eHTMLTag_head:
result=CloseHead(aNode); break;
diff --git a/mozilla/parser/htmlparser/src/nsHTMLParser.cpp b/mozilla/parser/htmlparser/src/nsHTMLParser.cpp
index 95496bb2fd6..8e34742b38e 100644
--- a/mozilla/parser/htmlparser/src/nsHTMLParser.cpp
+++ b/mozilla/parser/htmlparser/src/nsHTMLParser.cpp
@@ -542,6 +542,12 @@ PRBool nsHTMLParser::HandleStartToken(CToken* aToken) {
result=mSink->SetTitle(attrNode.GetSkippedContent());
}
break;
+ case eHTMLTag_textarea:
+ {
+ CollectSkippedContent(attrNode);
+ result=AddLeaf(attrNode);
+ }
+ break;
case eHTMLTag_form:
result = mSink->OpenForm(attrNode);
break;
@@ -632,6 +638,7 @@ PRBool nsHTMLParser::HandleEndToken(CToken* aToken) {
case eHTMLTag_style:
case eHTMLTag_link:
case eHTMLTag_meta:
+ case eHTMLTag_textarea:
result=PR_TRUE;
break;
@@ -1069,6 +1076,8 @@ PRBool nsHTMLParser::CloseContainer(const nsIParserNode& aNode){
case eHTMLTag_style:
break;
+ case eHTMLTag_textarea:
+ break;
case eHTMLTag_head:
result=CloseHead(aNode); break;