Simplify node logic
diff --git a/tinyxml2.cpp b/tinyxml2.cpp
index 77c1a8a..9ca1100 100755
--- a/tinyxml2.cpp
+++ b/tinyxml2.cpp
@@ -855,7 +855,6 @@
         p = node->ParseDeep( p, &endTag );

         if ( !p ) {

             DeleteNode( node );

-            node = 0;

             if ( !_document->Error() ) {

                 _document->SetError( XML_ERROR_PARSING, 0, 0 );

             }

@@ -890,16 +889,11 @@
             }

             if ( mismatch ) {

                 _document->SetError( XML_ERROR_MISMATCHED_ELEMENT, node->Value(), 0 );

-                p = 0;

+                DeleteNode( node );

+                break;

             }

         }

-        if ( p == 0 ) {

-            DeleteNode( node );

-            node = 0;

-        }

-        if ( node ) {

-            this->InsertEndChild( node );

-        }

+        InsertEndChild( node );

     }

     return 0;

 }