diff options
Diffstat (limited to 'cpp/test/IceUtil/stacktrace/Client.cpp')
-rw-r--r-- | cpp/test/IceUtil/stacktrace/Client.cpp | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/cpp/test/IceUtil/stacktrace/Client.cpp b/cpp/test/IceUtil/stacktrace/Client.cpp index 682443b8732..6d28869a5d8 100644 --- a/cpp/test/IceUtil/stacktrace/Client.cpp +++ b/cpp/test/IceUtil/stacktrace/Client.cpp @@ -222,6 +222,7 @@ int main(int argc, char* argv[]) while(true) { + bool match = true; ifstream ifs(filename.c_str()); stringstream sstr; sstr << ifs.rdbuf(); @@ -259,14 +260,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 { @@ -277,6 +278,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 } |