Issue299 - Allow Accept() to work with element trees that are not
linked in to the owning document.
diff --git a/tinyxml2.cpp b/tinyxml2.cpp
index 57a4840..a22f251 100755
--- a/tinyxml2.cpp
+++ b/tinyxml2.cpp
@@ -2297,8 +2297,12 @@
 

 bool XMLPrinter::VisitEnter( const XMLElement& element, const XMLAttribute* attribute )

 {

-	const XMLElement*	parentElem = element.Parent()->ToElement();

-	bool		compactMode = parentElem ? CompactMode(*parentElem) : _compactMode;

+    const XMLElement*	parentElem = NULL;

+    if (  element.Parent() )

+    {

+	parentElem = element.Parent()->ToElement();

+    }

+    bool		compactMode = parentElem ? CompactMode(*parentElem) : _compactMode;

     OpenElement( element.Name(), compactMode );

     while ( attribute ) {

         PushAttribute( attribute->Name(), attribute->Value() );