diff --git a/tinyxml2.cpp b/tinyxml2.cpp index 6115346..c721a61 100644 --- a/tinyxml2.cpp +++ b/tinyxml2.cpp @@ -1190,7 +1190,10 @@ int XMLDocument::LoadFile( const char* filename ) DeleteChildren(); InitDocument(); +#pragma warning ( push ) +#pragma warning ( disable : 4996 ) // Fail to see a compelling reason why this should be deprecated. FILE* fp = fopen( filename, "rb" ); +#pragma warning ( pop ) if ( !fp ) { SetError( ERROR_FILE_NOT_FOUND, filename, 0 ); return errorID; @@ -1233,7 +1236,10 @@ int XMLDocument::LoadFile( FILE* fp ) void XMLDocument::SaveFile( const char* filename ) { +#pragma warning ( push ) +#pragma warning ( disable : 4996 ) // Fail to see a compelling reason why this should be deprecated. FILE* fp = fopen( filename, "w" ); +#pragma warning ( pop ) XMLPrinter stream( fp ); Print( &stream ); fclose( fp ); @@ -1286,16 +1292,17 @@ void XMLDocument::SetError( int error, const char* str1, const char* str2 ) void XMLDocument::PrintError() const { if ( errorID ) { - char buf1[20] = { 0 }; - char buf2[20] = { 0 }; + static const int LEN = 20; + char buf1[LEN] = { 0 }; + char buf2[LEN] = { 0 }; if ( errorStr1 ) { - strncpy( buf1, errorStr1, 20 ); - buf1[19] = 0; + TIXML_SNPRINTF( buf1, LEN, "%s", errorStr1 ); + buf1[LEN-1] = 0; } if ( errorStr2 ) { - strncpy( buf2, errorStr2, 20 ); - buf2[19] = 0; + TIXML_SNPRINTF( buf2, LEN, "%s", errorStr2 ); + buf2[LEN-1] = 0; } printf( "XMLDocument error id=%d str1=%s str2=%s\n", diff --git a/tinyxml2/tinyxml2.vcxproj b/tinyxml2/tinyxml2.vcxproj index f4d20a2..89eef04 100644 --- a/tinyxml2/tinyxml2.vcxproj +++ b/tinyxml2/tinyxml2.vcxproj @@ -49,7 +49,7 @@ Level4 Disabled - _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) Console diff --git a/xmltest.cpp b/xmltest.cpp index cda1c43..9f61a6b 100644 --- a/xmltest.cpp +++ b/xmltest.cpp @@ -301,8 +301,12 @@ int main( int /*argc*/, const char* /*argv*/ ) char verifyBuf[256]; int okay = 0; + +#pragma warning ( push ) +#pragma warning ( disable : 4996 ) // Fail to see a compelling reason why this should be deprecated. FILE* saved = fopen( "utf8testout.xml", "r" ); FILE* verify = fopen( "utf8testverify.xml", "r" ); +#pragma warning ( pop ) if ( saved && verify ) { @@ -415,14 +419,20 @@ int main( int /*argc*/, const char* /*argv*/ ) XMLTest( "Entity transformation: read. ", expected, context, true ); +#pragma warning ( push ) +#pragma warning ( disable : 4996 ) // Fail to see a compelling reason why this should be deprecated. FILE* textfile = fopen( "textfile.txt", "w" ); +#pragma warning ( pop ) if ( textfile ) { XMLPrinter streamer( textfile ); psg->Accept( &streamer ); fclose( textfile ); } +#pragma warning ( push ) +#pragma warning ( disable : 4996 ) // Fail to see a compelling reason why this should be deprecated. textfile = fopen( "textfile.txt", "r" ); +#pragma warning ( pop ) TIXMLASSERT( textfile ); if ( textfile ) {