Made SaveFile symmetrical with LoadFile
Added overload taking a FILE pointer
Return error code (if any) instead of void
diff --git a/tinyxml2.cpp b/tinyxml2.cpp
index f6998ea..4ce9b32 100644
--- a/tinyxml2.cpp
+++ b/tinyxml2.cpp
@@ -1407,7 +1407,7 @@
}
-void XMLDocument::SaveFile( const char* filename )
+int XMLDocument::SaveFile( const char* filename )
{
#if defined(_MSC_VER)
#pragma warning ( push )
@@ -1417,14 +1417,21 @@
#if defined(_MSC_VER)
#pragma warning ( pop )
#endif
- if ( fp ) {
- XMLPrinter stream( fp );
- Print( &stream );
- fclose( fp );
- }
- else {
+ if ( !fp ) {
SetError( XML_ERROR_FILE_COULD_NOT_BE_OPENED, filename, 0 );
+ return errorID;
}
+ SaveFile(fp);
+ fclose( fp );
+ return errorID;
+}
+
+
+int XMLDocument::SaveFile( FILE* fp )
+{
+ XMLPrinter stream( fp );
+ Print( &stream );
+ return errorID;
}