- DIAG: Policy change: Only include the BOINC symbol store for BOINC

binaries.  The old policy was kept around as a backwards compatibility
        thing before a new flag was added to the diagnostics to identify
        project applications.
        
    lib/
        stackwalker_win.cpp

svn path=/trunk/boinc/; revision=18339
This commit is contained in:
Rom Walton 2009-06-09 17:30:39 +00:00
parent cbdf4daaee
commit 09a2564058
2 changed files with 48 additions and 37 deletions

View File

@ -5196,3 +5196,12 @@ Charlie 8 June 2009
clientgui/ clientgui/
AsyncRPC.cpp, .h AsyncRPC.cpp, .h
MainDocument.cpp. .h MainDocument.cpp. .h
Rom 9 June 2009
- DIAG: Policy change: Only include the BOINC symbol store for BOINC
binaries. The old policy was kept around as a backwards compatibility
thing before a new flag was added to the diagnostics to identify
project applications.
lib/
stackwalker_win.cpp

View File

@ -582,9 +582,6 @@ int DebuggerInitialize( LPCSTR pszBOINCLocation, LPCSTR pszSymbolStore, BOOL bPr
strSymbolSearchPath += tt + std::string( ";" ); strSymbolSearchPath += tt + std::string( ";" );
} }
if (!diagnostics_is_flag_set(BOINC_DIAG_BOINCAPPLICATION) ||
(diagnostics_is_flag_set(BOINC_DIAG_BOINCAPPLICATION) || (0 < strlen(pszSymbolStore))))
{
// Depending on if we are a BOINC application or a project application // Depending on if we are a BOINC application or a project application
// we'll need to store our symbol files in two different locations. // we'll need to store our symbol files in two different locations.
// //
@ -600,20 +597,25 @@ int DebuggerInitialize( LPCSTR pszBOINCLocation, LPCSTR pszSymbolStore, BOOL bPr
} }
// Microsoft Public Symbol Server // Microsoft Public Symbol Server
if (!diagnostics_is_flag_set(BOINC_DIAG_BOINCAPPLICATION) || (0 < strlen(pszSymbolStore)) {
if (std::string::npos == strSymbolSearchPath.find("http://msdl.microsoft.com/download/symbols")) { if (std::string::npos == strSymbolSearchPath.find("http://msdl.microsoft.com/download/symbols")) {
strSymbolSearchPath += strSymbolSearchPath +=
std::string( "srv*" ) + strLocalSymbolStore + std::string( "srv*" ) + strLocalSymbolStore +
std::string( "*http://msdl.microsoft.com/download/symbols;" ); std::string( "*http://msdl.microsoft.com/download/symbols;" );
} }
}
// Project Symbol Server // Project Symbol Server
if (diagnostics_is_flag_set(BOINC_DIAG_BOINCAPPLICATION) && (0 < strlen(pszSymbolStore)) {
if ((std::string::npos == strSymbolSearchPath.find(pszSymbolStore)) && (0 < strlen(pszSymbolStore))) { if ((std::string::npos == strSymbolSearchPath.find(pszSymbolStore)) && (0 < strlen(pszSymbolStore))) {
strSymbolSearchPath += strSymbolSearchPath +=
std::string( "srv*" ) + strLocalSymbolStore + std::string( "*" ) + std::string( "srv*" ) + strLocalSymbolStore + std::string( "*" ) +
std::string( pszSymbolStore ) + std::string( ";" ); std::string( pszSymbolStore ) + std::string( ";" );
} }
}
// BOINC Symbol Server // BOINC Symbol Server
if (!diagnostics_is_flag_set(BOINC_DIAG_BOINCAPPLICATION)) {
if (std::string::npos == strSymbolSearchPath.find("http://boinc.berkeley.edu/symstore")) { if (std::string::npos == strSymbolSearchPath.find("http://boinc.berkeley.edu/symstore")) {
strSymbolSearchPath += strSymbolSearchPath +=
std::string( "srv*" ) + strLocalSymbolStore + std::string( "srv*" ) + strLocalSymbolStore +