Fixed issue 147 (XMLDocument::LoadFile() may crash on non-regular file)
diff --git a/tinyxml2.cpp b/tinyxml2.cpp
index 7e4ff40..4574fb3 100755
--- a/tinyxml2.cpp
+++ b/tinyxml2.cpp
@@ -1639,6 +1639,13 @@
 {

     Clear();

 

+    fseek( fp, 0, SEEK_SET );

+    fgetc( fp );

+    if ( ferror( fp ) != 0 ) {

+        SetError( XML_ERROR_FILE_READ_ERROR, 0, 0 );

+        return _errorID;

+    }

+

     fseek( fp, 0, SEEK_END );

     size_t size = ftell( fp );

     fseek( fp, 0, SEEK_SET );