From db480bcd9cfac89995cc52609b48ecee32281f3f Mon Sep 17 00:00:00 2001 From: "Andrew A. de Laix" Date: Fri, 9 Jul 2010 13:30:58 -0700 Subject: Don't write windows os minidumps if running from a debugger. --- indra/newview/llwindebug.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'indra/newview/llwindebug.cpp') diff --git a/indra/newview/llwindebug.cpp b/indra/newview/llwindebug.cpp index 502fefd4ef..948b9a56e1 100644 --- a/indra/newview/llwindebug.cpp +++ b/indra/newview/llwindebug.cpp @@ -91,12 +91,15 @@ LONG NTAPI vectoredHandler(PEXCEPTION_POINTERS exception_infop) } // static -void LLWinDebug::init() +void LLWinDebug::init() { static bool s_first_run = true; // Load the dbghelp dll now, instead of waiting for the crash. // Less potential for stack mangling + // Don't install vectored exception handler if being debugged. + if(IsDebuggerPresent()) return; + if (s_first_run) { // First, try loading from the directory that the app resides in. -- cgit v1.2.3 From 1f79bee86ee65a2eb3800db6be1853dd79d7a49d Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Fri, 9 Jul 2010 14:26:56 -0700 Subject: EXT-8237 FIX Opening up Edit Outfit- Add More->Shirt causes FPS to drop from 60fps to 18fps for a really long time EXT-8235 FIX HUGE long delay when reopening and/or closing edit outfit sidepanel if "Add More..." is active EXT-7695 FIX UI lockup after add wearable, right click av -> Change Outfit reviewed by Vir --- indra/newview/llwindebug.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra/newview/llwindebug.cpp') diff --git a/indra/newview/llwindebug.cpp b/indra/newview/llwindebug.cpp index 502fefd4ef..0eb043a7a3 100644 --- a/indra/newview/llwindebug.cpp +++ b/indra/newview/llwindebug.cpp @@ -129,7 +129,7 @@ void LLWinDebug::init() s_first_run = false; // Add this exeption hanlder to save windows style minidump. - AddVectoredExceptionHandler(0, &vectoredHandler); + //AddVectoredExceptionHandler(0, &vectoredHandler); } } -- cgit v1.2.3 From 76ce102427c12cbb57fe0848cbcbd1adcabdd1a8 Mon Sep 17 00:00:00 2001 From: callum Date: Fri, 9 Jul 2010 17:07:35 -0700 Subject: VWR-20182 - Turn off Win32 minidump writes temporarily because they are triggered for all exceptions and lead to deadlocks --- indra/newview/llwindebug.cpp | 58 ++++++++++++++++++++++++-------------------- 1 file changed, 32 insertions(+), 26 deletions(-) (limited to 'indra/newview/llwindebug.cpp') diff --git a/indra/newview/llwindebug.cpp b/indra/newview/llwindebug.cpp index 948b9a56e1..282c6f0c30 100644 --- a/indra/newview/llwindebug.cpp +++ b/indra/newview/llwindebug.cpp @@ -138,36 +138,42 @@ void LLWinDebug::init() void LLWinDebug::writeDumpToFile(MINIDUMP_TYPE type, MINIDUMP_EXCEPTION_INFORMATION *ExInfop, const std::string& filename) { - if(f_mdwp == NULL || gDirUtilp == NULL) + // Temporary fix to switch out the code that writes the DMP file. + // Fix coming that doesn't write a mini dump file for regular C++ exceptions. + const bool enable_write_dump_file = false; + if ( enable_write_dump_file ) { - return; - } - else - { - std::string dump_path = gDirUtilp->getExpandedFilename(LL_PATH_LOGS, filename); - - HANDLE hFile = CreateFileA(dump_path.c_str(), - GENERIC_WRITE, - FILE_SHARE_WRITE, - NULL, - CREATE_ALWAYS, - FILE_ATTRIBUTE_NORMAL, - NULL); - - if (hFile != INVALID_HANDLE_VALUE) + if(f_mdwp == NULL || gDirUtilp == NULL) { - // Write the dump, ignoring the return value - f_mdwp(GetCurrentProcess(), - GetCurrentProcessId(), - hFile, - type, - ExInfop, - NULL, - NULL); - - CloseHandle(hFile); + return; } + else + { + std::string dump_path = gDirUtilp->getExpandedFilename(LL_PATH_LOGS, filename); + HANDLE hFile = CreateFileA(dump_path.c_str(), + GENERIC_WRITE, + FILE_SHARE_WRITE, + NULL, + CREATE_ALWAYS, + FILE_ATTRIBUTE_NORMAL, + NULL); + + if (hFile != INVALID_HANDLE_VALUE) + { + // Write the dump, ignoring the return value + f_mdwp(GetCurrentProcess(), + GetCurrentProcessId(), + hFile, + type, + ExInfop, + NULL, + NULL); + + CloseHandle(hFile); + } + + } } } -- cgit v1.2.3