Simplify node logic

This commit is contained in:
JayXon 2014-12-12 20:07:14 -05:00
parent ee2c46928e
commit dbfdd8fdd5

View File

@ -855,7 +855,6 @@ char* XMLNode::ParseDeep( char* p, StrPair* parentEnd )
p = node->ParseDeep( p, &endTag ); p = node->ParseDeep( p, &endTag );
if ( !p ) { if ( !p ) {
DeleteNode( node ); DeleteNode( node );
node = 0;
if ( !_document->Error() ) { if ( !_document->Error() ) {
_document->SetError( XML_ERROR_PARSING, 0, 0 ); _document->SetError( XML_ERROR_PARSING, 0, 0 );
} }
@ -890,16 +889,11 @@ char* XMLNode::ParseDeep( char* p, StrPair* parentEnd )
} }
if ( mismatch ) { if ( mismatch ) {
_document->SetError( XML_ERROR_MISMATCHED_ELEMENT, node->Value(), 0 ); _document->SetError( XML_ERROR_MISMATCHED_ELEMENT, node->Value(), 0 );
p = 0; DeleteNode( node );
break;
} }
} }
if ( p == 0 ) { InsertEndChild( node );
DeleteNode( node );
node = 0;
}
if ( node ) {
this->InsertEndChild( node );
}
} }
return 0; return 0;
} }