new element loop
diff --git a/tinyxml2.h b/tinyxml2.h
index 7185472..0e15231 100644
--- a/tinyxml2.h
+++ b/tinyxml2.h
@@ -463,7 +463,6 @@
 	virtual bool Accept( XMLVisitor* visitor ) const = 0;

 

 	virtual char* ParseDeep( char* );

-	virtual bool IsClosingElement() const { return false; }

 

 protected:

 	XMLNode( XMLDocument* );

@@ -681,7 +680,12 @@
 	const char* GetText() const;

 

 	// internal:

-	virtual bool IsClosingElement() const { return closing; }

+	enum {

+		OPEN,		// <foo>

+		CLOSED,		// <foo/>

+		CLOSING		// </foo>

+	};

+	int ClosingType() const { return closingType; }

 	char* ParseDeep( char* p );

 

 private:

@@ -693,9 +697,9 @@
 	XMLAttribute* FindAttribute( const char* name );

 	XMLAttribute* FindOrCreateAttribute( const char* name );

 	void LinkAttribute( XMLAttribute* attrib );

-	char* ParseAttributes( char* p, bool *closedElement );

+	char* ParseAttributes( char* p );

 

-	bool closing;

+	int closingType;

 	XMLAttribute* rootAttribute;

 };