]> git.saurik.com Git - wxWidgets.git/commitdiff
Call SymCleanup() in wxStackWalker to fix problem with next call to it.
authorVadim Zeitlin <vadim@wxwidgets.org>
Fri, 18 Dec 2009 14:47:08 +0000 (14:47 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Fri, 18 Dec 2009 14:47:08 +0000 (14:47 +0000)
Calling SymInitialize() second and subsequent times failed (and hence so did
wxStackWalker::WalkFrom() and other methods) as we didn't call SymCleanup()
because of some problems with old versions of debughlp.dll. These problems
don't seem to exist any more so do call SymCleanup() so that we can walk the
stack more than once.

Closes #11544.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62925 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/msw/stackwalk.cpp

index 54802e4c247772b7dff71fc8cd075eb3a5470672..9e87fc52a77957191ae1f91a133a67450949ac7f 100644 (file)
@@ -300,14 +300,10 @@ void wxStackWalker::WalkFrom(const CONTEXT *pCtx, size_t skip, size_t maxDepth)
         }
     }
 
-    // this results in crashes inside ntdll.dll when called from
-    // exception handler ...
-#if 0
     if ( !wxDbgHelpDLL::SymCleanup(hProcess) )
     {
         wxDbgHelpDLL::LogError(wxT("SymCleanup"));
     }
-#endif
 }
 
 void wxStackWalker::WalkFrom(const _EXCEPTION_POINTERS *ep, size_t skip, size_t maxDepth)