diff options
Diffstat (limited to 'cpp/test/IceUtil/stacktrace/Client.cpp')
-rw-r--r-- | cpp/test/IceUtil/stacktrace/Client.cpp | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/cpp/test/IceUtil/stacktrace/Client.cpp b/cpp/test/IceUtil/stacktrace/Client.cpp index 4a16654b698..ff71e1866cc 100644 --- a/cpp/test/IceUtil/stacktrace/Client.cpp +++ b/cpp/test/IceUtil/stacktrace/Client.cpp @@ -226,6 +226,9 @@ int main(int argc, char* argv[]) while(true) { +#if defined(_WIN32) && defined(NDEBUG) + bool match = true; +#endif ifstream ifs(filename.c_str()); stringstream sstr; sstr << ifs.rdbuf(); @@ -263,14 +266,14 @@ int main(int argc, char* argv[]) if(actual[i].find(expected[i]) == string::npos) { #if defined(_WIN32) && defined(NDEBUG) + match = false; // // With windows optimized builds retry with the alternate // expect file. // if(filename != "StackTrace.release.Win32") { - filename = "StackTrace.release.Win32"; - continue; + break; } else { @@ -281,6 +284,14 @@ int main(int argc, char* argv[]) #endif } } + +#if defined(_WIN32) && defined(NDEBUG) + if(!match && filename != "StackTrace.release.Win32") + { + filename = "StackTrace.release.Win32"; + continue; + } +#endif break; #endif } |