From 88947e7a48611196c242c02297910484acc283fd Mon Sep 17 00:00:00 2001 From: Tsuda Kageyu Date: Fri, 31 Jul 2015 20:55:23 +0900 Subject: [PATCH] Silence some MSVC specific warnings in tests. --- tests/main.cpp | 10 +++++++++- tests/utils.h | 6 +++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/tests/main.cpp b/tests/main.cpp index ab89dc3e..c83c9d13 100644 --- a/tests/main.cpp +++ b/tests/main.cpp @@ -17,7 +17,7 @@ int main(int argc, char* argv[]) // Create the event manager and test controller CppUnit::TestResult controller; - // Add a listener that colllects test result + // Add a listener that collects test result CppUnit::TestResultCollector result; controller.addListener(&result); @@ -39,12 +39,20 @@ int main(int argc, char* argv[]) CppUnit::CompilerOutputter outputter(&result, std::cerr); outputter.write(); +#if defined(_MSC_VER) && _MSC_VER > 1500 + char *xml = NULL; + ::_dupenv_s(&xml, NULL, "CPPUNIT_XML"); +#else char *xml = ::getenv("CPPUNIT_XML"); +#endif if(xml && !::strcmp(xml, "1")) { std::ofstream xmlfileout("cpptestresults.xml"); CppUnit::XmlOutputter xmlout(&result, xmlfileout); xmlout.write(); } +#if defined(_MSC_VER) && _MSC_VER > 1500 + ::free(xml); +#endif } catch(std::invalid_argument &e){ std::cerr << std::endl diff --git a/tests/utils.h b/tests/utils.h index 1dfbec37..de51c04c 100644 --- a/tests/utils.h +++ b/tests/utils.h @@ -33,7 +33,11 @@ inline string copyFile(const string &filename, const string &ext) GetTempPathA(sizeof(testFileName), testFileName); GetTempFileNameA(testFileName, "tag", 0, testFileName); DeleteFileA(testFileName); +# if defined(_MSC_VER) && _MSC_VER > 1500 + strcat_s(testFileName, ext.c_str()); +# else strcat(testFileName, ext.c_str()); +# endif #else snprintf(testFileName, sizeof(testFileName), "/%s/taglib-test-XXXXXX%s", P_tmpdir, ext.c_str()); static_cast(mkstemps(testFileName, 6)); @@ -74,7 +78,7 @@ inline bool fileEqual(const string &filename1, const string &filename2) if(n1 == 0) break; - if(memcmp(buf1, buf2, n1) != 0) return false; + if(memcmp(buf1, buf2, static_cast(n1)) != 0) return false; } return stream1.good() == stream2.good(); -- 2.40.0