mirror of https://github.com/BOINC/boinc.git
*** empty log message ***
svn path=/trunk/boinc/; revision=10275
This commit is contained in:
parent
dc91c30c9d
commit
b482e39699
|
@ -5599,3 +5599,13 @@ Charlie 8 June 2006
|
||||||
SecurityUtility.cpp
|
SecurityUtility.cpp
|
||||||
SetupSecurity.h
|
SetupSecurity.h
|
||||||
SetupSecurity.cpp
|
SetupSecurity.cpp
|
||||||
|
|
||||||
|
Rom 8 June 2006
|
||||||
|
- Bug Fix: When the debugger fails to initialize do not attempt to use
|
||||||
|
the other debugger functions.
|
||||||
|
- Bug Fix: Display which functions are not found in dbghelp.dll when one
|
||||||
|
or more are missing.
|
||||||
|
|
||||||
|
lib/
|
||||||
|
diagnostics_win.C
|
||||||
|
stackwalker_win.cpp
|
||||||
|
|
|
@ -1795,6 +1795,7 @@ UINT diagnostics_determine_exit_code() {
|
||||||
UINT WINAPI diagnostics_unhandled_exception_monitor(LPVOID lpParameter) {
|
UINT WINAPI diagnostics_unhandled_exception_monitor(LPVOID lpParameter) {
|
||||||
DWORD dwEvent = NULL;
|
DWORD dwEvent = NULL;
|
||||||
BOOL bContinue = TRUE;
|
BOOL bContinue = TRUE;
|
||||||
|
BOOL bDebuggerInitialized = FALSE;
|
||||||
HANDLE hEvents[2];
|
HANDLE hEvents[2];
|
||||||
unsigned int i;
|
unsigned int i;
|
||||||
CONTEXT c;
|
CONTEXT c;
|
||||||
|
@ -1871,7 +1872,7 @@ UINT WINAPI diagnostics_unhandled_exception_monitor(LPVOID lpParameter) {
|
||||||
|
|
||||||
#ifndef __CYGWIN__
|
#ifndef __CYGWIN__
|
||||||
// Kickstart the debugger extensions
|
// Kickstart the debugger extensions
|
||||||
DebuggerInitialize(
|
bDebuggerInitialized = !DebuggerInitialize(
|
||||||
diagnostics_get_boinc_dir(),
|
diagnostics_get_boinc_dir(),
|
||||||
diagnostics_get_symstore(),
|
diagnostics_get_symstore(),
|
||||||
diagnostics_is_proxy_enabled(),
|
diagnostics_is_proxy_enabled(),
|
||||||
|
@ -1879,7 +1880,7 @@ UINT WINAPI diagnostics_unhandled_exception_monitor(LPVOID lpParameter) {
|
||||||
);
|
);
|
||||||
|
|
||||||
// Dump any useful information
|
// Dump any useful information
|
||||||
DebuggerDisplayDiagnostics();
|
if (bDebuggerInitialized) DebuggerDisplayDiagnostics();
|
||||||
#endif
|
#endif
|
||||||
// Dump the process statistics
|
// Dump the process statistics
|
||||||
diagnostics_dump_process_information();
|
diagnostics_dump_process_information();
|
||||||
|
@ -1900,6 +1901,7 @@ UINT WINAPI diagnostics_unhandled_exception_monitor(LPVOID lpParameter) {
|
||||||
|
|
||||||
if (diagnostics_is_flag_set(BOINC_DIAG_DUMPCALLSTACKENABLED)) {
|
if (diagnostics_is_flag_set(BOINC_DIAG_DUMPCALLSTACKENABLED)) {
|
||||||
#ifndef __CYGWIN__
|
#ifndef __CYGWIN__
|
||||||
|
if (bDebuggerInitialized) {
|
||||||
if (pThreadEntry->crash_exception_record ) {
|
if (pThreadEntry->crash_exception_record ) {
|
||||||
StackwalkFilter(
|
StackwalkFilter(
|
||||||
pThreadEntry->crash_exception_record,
|
pThreadEntry->crash_exception_record,
|
||||||
|
@ -1916,6 +1918,7 @@ UINT WINAPI diagnostics_unhandled_exception_monitor(LPVOID lpParameter) {
|
||||||
&c
|
&c
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
#else
|
#else
|
||||||
fprintf(stderr, "Warning: Callstack dumps are not supported on CYGWIN\n");
|
fprintf(stderr, "Warning: Callstack dumps are not supported on CYGWIN\n");
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -482,7 +482,23 @@ int DebuggerInitialize( LPCSTR pszBOINCLocation, LPCSTR pszSymbolStore, BOOL bPr
|
||||||
pSI == NULL || pSRC == NULL || pSSO == NULL || pSW == NULL ||
|
pSI == NULL || pSRC == NULL || pSSO == NULL || pSW == NULL ||
|
||||||
pUDSN == NULL || pSLM == NULL )
|
pUDSN == NULL || pSLM == NULL )
|
||||||
{
|
{
|
||||||
_ftprintf( stderr, "GetProcAddress(): some required function not found.\n" );
|
if (!pIAV) fprintf( stderr, "GetProcAddress(): ImagehlpApiVersion missing.\n" );
|
||||||
|
if (!pSC) fprintf( stderr, "GetProcAddress(): SymCleanup missing.\n" );
|
||||||
|
if (!pSEM) fprintf( stderr, "GetProcAddress(): SymEnumerateModules64 missing.\n" );
|
||||||
|
if (!pSFTA) fprintf( stderr, "GetProcAddress(): SymFunctionTableAccess64 missing.\n" );
|
||||||
|
if (!pSGLFA) fprintf( stderr, "GetProcAddress(): SymGetLineFromAddr64 missing.\n" );
|
||||||
|
if (!pSGMB) fprintf( stderr, "GetProcAddress(): SymGetModuleBase64 missing.\n" );
|
||||||
|
if (!pSGMI) fprintf( stderr, "GetProcAddress(): SymGetModuleInfo64 missing.\n" );
|
||||||
|
if (!pSGO) fprintf( stderr, "GetProcAddress(): SymGetOptions missing.\n" );
|
||||||
|
if (!pSGSP) fprintf( stderr, "GetProcAddress(): SymGetSearchPath missing.\n" );
|
||||||
|
if (!pSFA) fprintf( stderr, "GetProcAddress(): SymFromAddr missing.\n" );
|
||||||
|
if (!pSI) fprintf( stderr, "GetProcAddress(): SymInitialize missing.\n" );
|
||||||
|
if (!pSRC) fprintf( stderr, "GetProcAddress(): SymRegisterCallback64 missing.\n" );
|
||||||
|
if (!pSSO) fprintf( stderr, "GetProcAddress(): SymSetOptions missing.\n" );
|
||||||
|
if (!pSW) fprintf( stderr, "GetProcAddress(): StackWalk64 missing.\n" );
|
||||||
|
if (!pUDSN) fprintf( stderr, "GetProcAddress(): UnDecorateSymbolName missing.\n" );
|
||||||
|
if (!pSLM) fprintf( stderr, "GetProcAddress(): SymLoadModuleEx missing.\n" );
|
||||||
|
|
||||||
FreeLibrary( g_hDbgHelpDll );
|
FreeLibrary( g_hDbgHelpDll );
|
||||||
g_bInitialized = FALSE;
|
g_bInitialized = FALSE;
|
||||||
return 1;
|
return 1;
|
||||||
|
|
Loading…
Reference in New Issue