Add warning for the working directory. Verify win64 fix.
diff --git a/tinyxml2.cpp b/tinyxml2.cpp
index 8ee8ca2..5e5b93d 100644
--- a/tinyxml2.cpp
+++ b/tinyxml2.cpp
@@ -1408,9 +1408,14 @@
#if defined(_MSC_VER)
#pragma warning ( pop )
#endif
- XMLPrinter stream( fp );
- Print( &stream );
- fclose( fp );
+ if ( fp ) {
+ XMLPrinter stream( fp );
+ Print( &stream );
+ fclose( fp );
+ }
+ else {
+ SetError( XML_ERROR_FILE_COULD_NOT_BE_OPENED, filename, 0 );
+ }
}
diff --git a/tinyxml2.h b/tinyxml2.h
index 38168f2..6f3828c 100644
--- a/tinyxml2.h
+++ b/tinyxml2.h
@@ -93,9 +93,9 @@
#define TIXML_SSCANF sscanf
#endif
-static const int TIXML2_MAJOR_VERSION = 0;
-static const int TIXML2_MINOR_VERSION = 9;
-static const int TIXML2_PATCH_VERSION = 1;
+static const int TIXML2_MAJOR_VERSION = 0;
+static const int TIXML2_MINOR_VERSION = 9;
+static const int TIXML2_PATCH_VERSION = 1;
namespace tinyxml2
{
@@ -736,6 +736,7 @@
XML_WRONG_ATTRIBUTE_TYPE,
XML_ERROR_FILE_NOT_FOUND,
+ XML_ERROR_FILE_COULD_NOT_BE_OPENED,
XML_ERROR_ELEMENT_MISMATCH,
XML_ERROR_PARSING_ELEMENT,
XML_ERROR_PARSING_ATTRIBUTE,
diff --git a/xmltest.cpp b/xmltest.cpp
index 8fc3cfb..93b5599 100644
--- a/xmltest.cpp
+++ b/xmltest.cpp
@@ -77,6 +77,29 @@
_CrtMemCheckpoint( &startMemState );
#endif
+ #if defined(_MSC_VER)
+ #pragma warning ( push )
+ #pragma warning ( disable : 4996 ) // Fail to see a compelling reason why this should be deprecated.
+ #endif
+
+ FILE* fp = fopen( "dream.xml", "r" );
+ if ( !fp ) {
+ printf( "Error opening test file 'dream.xml'.\n"
+ "Is your working directory the same as where \n"
+ "the xmltest.cpp and dream.xml file are?\n\n"
+ #if defined( _MSC_VER )
+ "In windows Visual Studio you may need to set\n"
+ "Properties->Debugging->Working Directory to '..'\n"
+ #endif
+ );
+ exit( 1 );
+ }
+ fclose( fp );
+
+ #if defined(_MSC_VER)
+ #pragma warning ( pop )
+ #endif
+
/* ------ Example 1: Load and parse an XML file. ---- */
{
XMLDocument doc;