X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=common%2Fos_win32.cpp;h=e9306cdc6dfa0168b3bca328d5511b66bb551932;hb=HEAD;hp=e00fe64bd50edeacb197d8f04a704b3bf83b9bfc;hpb=8ba4a4a5748f36240f7c98196941993b348f56e1;p=apitrace diff --git a/common/os_win32.cpp b/common/os_win32.cpp index e00fe64..e9306cd 100644 --- a/common/os_win32.cpp +++ b/common/os_win32.cpp @@ -125,7 +125,6 @@ quoteArg(std::string &s, const char *arg) s.push_back('"'); while (true) { c = *arg++; - switch (c) if (c == '\0') { break; } else if (c == '"') { @@ -190,7 +189,7 @@ int execute(char * const * args) WaitForSingleObject(processInformation.hProcess, INFINITE); - DWORD exitCode = ~0; + DWORD exitCode = ~0UL; GetExitCodeProcess(processInformation.hProcess, &exitCode); CloseHandle(processInformation.hProcess); @@ -276,6 +275,15 @@ unhandledExceptionHandler(PEXCEPTION_POINTERS pExceptionInfo) return EXCEPTION_CONTINUE_SEARCH; } + /* + * Ignore .NET exception. + * + * http://ig2600.blogspot.co.uk/2011/01/why-do-i-keep-getting-exception-code.html + */ + if (pExceptionRecord->ExceptionCode == 0xe0434352) { + return EXCEPTION_CONTINUE_SEARCH; + } + // Clear direction flag #ifdef _MSC_VER #ifndef _WIN64