fixed a few infinite loops in new DTD code

This commit is contained in:
rickg%netscape.com 1998-08-31 21:52:47 +00:00
Родитель d33b347700
Коммит 0def007cba
4 изменённых файлов: 8 добавлений и 8 удалений

Просмотреть файл

@ -757,15 +757,14 @@ nsresult CNavDTD::HandleStartToken(CToken* aToken) {
}
break;
case eHTMLTag_link:
case eHTMLTag_base:
case eHTMLTag_meta:
case eHTMLTag_link:
{
result=OpenHead(attrNode);
if(NS_OK==result)
result=AddLeaf(attrNode);
if(NS_OK==result)
result=CloseHead(attrNode);
result=CloseHead(attrNode);
}
break;
@ -2628,7 +2627,7 @@ nsresult CNavDTD::CloseTopmostContainer(){
* 2nd, pass this message on to the sink.
* @update gess4/6/98
* @param aNode -- next node to be added to model
* @return TRUE if ok, FALSE if error
* @return error code; 0 means OK
*/
nsresult CNavDTD::AddLeaf(const nsIParserNode& aNode){
nsresult result=mSink->AddLeaf(aNode);

Просмотреть файл

@ -617,6 +617,7 @@ protected:
PRBool mHasOpenForm;
PRBool mHasOpenMap;
PRBool mHasOpenHead;
nsDeque mTokenDeque;
nsString mFilename;
nsIDTDDebug* mDTDDebug;

Просмотреть файл

@ -757,15 +757,14 @@ nsresult CNavDTD::HandleStartToken(CToken* aToken) {
}
break;
case eHTMLTag_link:
case eHTMLTag_base:
case eHTMLTag_meta:
case eHTMLTag_link:
{
result=OpenHead(attrNode);
if(NS_OK==result)
result=AddLeaf(attrNode);
if(NS_OK==result)
result=CloseHead(attrNode);
result=CloseHead(attrNode);
}
break;
@ -2628,7 +2627,7 @@ nsresult CNavDTD::CloseTopmostContainer(){
* 2nd, pass this message on to the sink.
* @update gess4/6/98
* @param aNode -- next node to be added to model
* @return TRUE if ok, FALSE if error
* @return error code; 0 means OK
*/
nsresult CNavDTD::AddLeaf(const nsIParserNode& aNode){
nsresult result=mSink->AddLeaf(aNode);

Просмотреть файл

@ -617,6 +617,7 @@ protected:
PRBool mHasOpenForm;
PRBool mHasOpenMap;
PRBool mHasOpenHead;
nsDeque mTokenDeque;
nsString mFilename;
nsIDTDDebug* mDTDDebug;