aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorArmin Weatherwax2011-03-22 02:32:25 +0100
committerArmin Weatherwax2011-03-22 02:32:25 +0100
commitf10d168e0cb4e8dd666bdcbe7ead850be8235bc9 (patch)
treeab7c520c5a23a35ad9b52349753288c05dc585a0
parentallow interaction with parcel web media (diff)
downloadmeta-impy-f10d168e0cb4e8dd666bdcbe7ead850be8235bc9.zip
meta-impy-f10d168e0cb4e8dd666bdcbe7ead850be8235bc9.tar.gz
meta-impy-f10d168e0cb4e8dd666bdcbe7ead850be8235bc9.tar.bz2
meta-impy-f10d168e0cb4e8dd666bdcbe7ead850be8235bc9.tar.xz
Don't report crashes if the grid where the crash happened is different from the grid logging in.
Because otherwise crash statistics are wrong. See viewers with higher crash than disconnect rate.
-rw-r--r--linden/indra/newview/app_settings/settings.xml11
-rw-r--r--linden/indra/newview/llstartup.cpp23
2 files changed, 32 insertions, 2 deletions
diff --git a/linden/indra/newview/app_settings/settings.xml b/linden/indra/newview/app_settings/settings.xml
index c381d99..315670c 100644
--- a/linden/indra/newview/app_settings/settings.xml
+++ b/linden/indra/newview/app_settings/settings.xml
@@ -677,6 +677,17 @@
677 <key>Value</key> 677 <key>Value</key>
678 <string>Random</string> 678 <string>Random</string>
679 </map> 679 </map>
680 <key>LastConnectedGrid</key>
681 <map>
682 <key>Comment</key>
683 <string>Last grid actually connected to</string>
684 <key>Persist</key>
685 <integer>1</integer>
686 <key>Type</key>
687 <string>String</string>
688 <key>Value</key>
689 <string />
690 </map>
680 <key>LastSelectedGrid</key> 691 <key>LastSelectedGrid</key>
681 <map> 692 <map>
682 <key>Comment</key> 693 <key>Comment</key>
diff --git a/linden/indra/newview/llstartup.cpp b/linden/indra/newview/llstartup.cpp
index a74744b..85836fd 100644
--- a/linden/indra/newview/llstartup.cpp
+++ b/linden/indra/newview/llstartup.cpp
@@ -1241,6 +1241,20 @@ bool idle_startup()
1241 hashed_mac.finalize(); 1241 hashed_mac.finalize();
1242 hashed_mac.hex_digest(hashed_mac_string); 1242 hashed_mac.hex_digest(hashed_mac_string);
1243 1243
1244 // Don't report crashes if the grid we crashed in
1245 // is different from the grid we log in
1246 eLastExecEvent last_exec_event = LAST_EXEC_NORMAL;
1247 {
1248 std::string current_grid = gHippoGridManager->getCurrentGrid()->getGridNick();
1249 std::string last_grid = gSavedSettings.getString("LastConnectedGrid");
1250 LL_DEBUGS("AppInit") << "current grid: " << current_grid
1251 << " Last Connected Grid: " << last_grid << LL_ENDL;
1252 if( last_grid == current_grid )
1253 {
1254 last_exec_event = gLastExecEvent;
1255 }
1256 }
1257
1244 // TODO if statement here to use web_login_key 1258 // TODO if statement here to use web_login_key
1245 if(web_login_key.isNull()){ 1259 if(web_login_key.isNull()){
1246 sAuthUriNum = llclamp(sAuthUriNum, 0, (S32)sAuthUris.size()-1); 1260 sAuthUriNum = llclamp(sAuthUriNum, 0, (S32)sAuthUris.size()-1);
@@ -1255,7 +1269,7 @@ bool idle_startup()
1255 gSkipOptionalUpdate, 1269 gSkipOptionalUpdate,
1256 gAcceptTOS, 1270 gAcceptTOS,
1257 gAcceptCriticalMessage, 1271 gAcceptCriticalMessage,
1258 gLastExecEvent, 1272 last_exec_event,
1259 requested_options, 1273 requested_options,
1260 hashed_mac_string, 1274 hashed_mac_string,
1261 LLAppViewer::instance()->getSerialNumber()); 1275 LLAppViewer::instance()->getSerialNumber());
@@ -1270,7 +1284,7 @@ bool idle_startup()
1270 gSkipOptionalUpdate, 1284 gSkipOptionalUpdate,
1271 gAcceptTOS, 1285 gAcceptTOS,
1272 gAcceptCriticalMessage, 1286 gAcceptCriticalMessage,
1273 gLastExecEvent, 1287 last_exec_event,
1274 requested_options, 1288 requested_options,
1275 hashed_mac_string, 1289 hashed_mac_string,
1276 LLAppViewer::instance()->getSerialNumber()); 1290 LLAppViewer::instance()->getSerialNumber());
@@ -1508,6 +1522,11 @@ bool idle_startup()
1508 1522
1509 if(successful_login) 1523 if(successful_login)
1510 { 1524 {
1525 {
1526 std::string current_grid = gHippoGridManager->getConnectedGrid()->getGridNick();
1527 gSavedSettings.setString("LastConnectedGrid", current_grid);
1528 }
1529
1511 std::string text; 1530 std::string text;
1512 text = LLUserAuth::getInstance()->getResponse("udp_blacklist"); 1531 text = LLUserAuth::getInstance()->getResponse("udp_blacklist");
1513 if(!text.empty()) 1532 if(!text.empty())