diff --git a/tinyxml2.cpp b/tinyxml2.cpp
index a9948cf..46f5f7f 100755
--- a/tinyxml2.cpp
+++ b/tinyxml2.cpp
@@ -515,6 +515,8 @@
 
 char* XMLDocument::Identify( char* p, XMLNode** node )
 {
+    TIXMLASSERT( node );
+    TIXMLASSERT( p );
     char* const start = p;
     p = XMLUtil::SkipWhiteSpace( p );
     if( !*p ) {
@@ -577,6 +579,8 @@
         p = start;	// Back it up, all the text counts.
     }
 
+    TIXMLASSERT( returnNode );
+    TIXMLASSERT( p );
     *node = returnNode;
     return p;
 }
@@ -844,9 +848,6 @@
         XMLNode* node = 0;
 
         p = _document->Identify( p, &node );
-        if ( p == 0 || node == 0 ) {
-            break;
-        }
 
         StrPair endTag;
         p = node->ParseDeep( p, &endTag );
