diff options
Diffstat (limited to 'linden/indra/newview/llappviewer.cpp')
-rw-r--r-- | linden/indra/newview/llappviewer.cpp | 35 |
1 files changed, 25 insertions, 10 deletions
diff --git a/linden/indra/newview/llappviewer.cpp b/linden/indra/newview/llappviewer.cpp index 8fc2578..57bc230 100644 --- a/linden/indra/newview/llappviewer.cpp +++ b/linden/indra/newview/llappviewer.cpp | |||
@@ -2042,7 +2042,7 @@ bool LLAppViewer::initConfiguration() | |||
2042 | void LLAppViewer::checkForCrash(void) | 2042 | void LLAppViewer::checkForCrash(void) |
2043 | { | 2043 | { |
2044 | 2044 | ||
2045 | #if 1 //*REMOVE:Mani LL_SEND_CRASH_REPORTS | 2045 | #if LL_SEND_CRASH_REPORTS |
2046 | //*NOTE:Mani The current state of the crash handler has the MacOSX | 2046 | //*NOTE:Mani The current state of the crash handler has the MacOSX |
2047 | // sending all crash reports as freezes, in order to let | 2047 | // sending all crash reports as freezes, in order to let |
2048 | // the MacOSX CrashRepoter generate stacks before spawning the | 2048 | // the MacOSX CrashRepoter generate stacks before spawning the |
@@ -2052,23 +2052,36 @@ void LLAppViewer::checkForCrash(void) | |||
2052 | #if LL_DARWIN | 2052 | #if LL_DARWIN |
2053 | if(gLastExecEvent != LAST_EXEC_NORMAL) | 2053 | if(gLastExecEvent != LAST_EXEC_NORMAL) |
2054 | #else | 2054 | #else |
2055 | if (gLastExecEvent == LAST_EXEC_FROZE || gLastExecEvent == LAST_EXEC_OTHER_CRASH) | 2055 | if (gLastExecEvent == LAST_EXEC_FROZE) |
2056 | #endif | 2056 | #endif |
2057 | { | 2057 | { |
2058 | llinfos << "Last execution froze, requesting to send crash report." << llendl; | 2058 | llinfos << "Last execution froze, requesting to send crash report." << llendl; |
2059 | // | 2059 | // |
2060 | // Pop up a freeze or crash warning dialog | 2060 | // Pop up a freeze or crash warning dialog |
2061 | // | 2061 | // |
2062 | std::ostringstream msg; | 2062 | S32 choice; |
2063 | msg << gSecondLife | 2063 | if(gCrashSettings.getS32(CRASH_BEHAVIOR_SETTING) == CRASH_BEHAVIOR_ASK) |
2064 | << " appears to have frozen or crashed on the previous run.\n" | 2064 | { |
2065 | << "Would you like to send a crash report?"; | 2065 | std::ostringstream msg; |
2066 | std::string alert; | 2066 | msg << gSecondLife |
2067 | alert = gSecondLife; | 2067 | << " appears to have frozen or crashed on the previous run.\n" |
2068 | alert += " Alert"; | 2068 | << "Would you like to send a crash report?"; |
2069 | S32 choice = OSMessageBox(msg.str(), | 2069 | std::string alert; |
2070 | alert = gSecondLife; | ||
2071 | alert += " Alert"; | ||
2072 | choice = OSMessageBox(msg.str(), | ||
2070 | alert, | 2073 | alert, |
2071 | OSMB_YESNO); | 2074 | OSMB_YESNO); |
2075 | } | ||
2076 | else if(gCrashSettings.getS32(CRASH_BEHAVIOR_SETTING) == CRASH_BEHAVIOR_NEVER_SEND) | ||
2077 | { | ||
2078 | choice = OSBTN_NO; | ||
2079 | } | ||
2080 | else | ||
2081 | { | ||
2082 | choice = OSBTN_YES; | ||
2083 | } | ||
2084 | |||
2072 | if (OSBTN_YES == choice) | 2085 | if (OSBTN_YES == choice) |
2073 | { | 2086 | { |
2074 | llinfos << "Sending crash report." << llendl; | 2087 | llinfos << "Sending crash report." << llendl; |
@@ -2343,6 +2356,8 @@ void LLAppViewer::handleViewerCrash() | |||
2343 | gDebugInfo["SessionLength"] = F32(LLFrameTimer::getElapsedSeconds()); | 2356 | gDebugInfo["SessionLength"] = F32(LLFrameTimer::getElapsedSeconds()); |
2344 | gDebugInfo["StartupState"] = LLStartUp::getStartupStateString(); | 2357 | gDebugInfo["StartupState"] = LLStartUp::getStartupStateString(); |
2345 | gDebugInfo["RAMInfo"]["Allocated"] = (LLSD::Integer) getCurrentRSS() >> 10; | 2358 | gDebugInfo["RAMInfo"]["Allocated"] = (LLSD::Integer) getCurrentRSS() >> 10; |
2359 | gDebugInfo["FirstLogin"] = (LLSD::Boolean) gAgent.isFirstLogin(); | ||
2360 | gDebugInfo["FirstRunThisInstall"] = gSavedSettings.getBOOL("FirstRunThisInstall"); | ||
2346 | 2361 | ||
2347 | if(gLogoutInProgress) | 2362 | if(gLogoutInProgress) |
2348 | { | 2363 | { |