summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xindra/newview/llvoavatar.cpp7
-rwxr-xr-xindra/newview/llvoavatarself.cpp5
2 files changed, 10 insertions, 2 deletions
diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp
index dbb9c218d3..47f7ce0f62 100755
--- a/indra/newview/llvoavatar.cpp
+++ b/indra/newview/llvoavatar.cpp
@@ -797,8 +797,11 @@ void LLVOAvatar::debugAvatarRezTime(std::string notification_name, std::string c
<< " : " << comment
<< llendl;
- LLSD metrics = gAgentAvatarp->metricsData();
- llinfos << gAgentAvatarp->avString() << " metrics " << metrics << llendl;
+ if (gAgentAvatarp && !gAgentAvatarp->isDead()) // not safe to call during ~LLVOAvatarself
+ {
+ LLSD metrics = gAgentAvatarp->metricsData();
+ llinfos << gAgentAvatarp->avString() << " metrics " << metrics << llendl;
+ }
if (gSavedSettings.getBOOL("DebugAvatarRezTime"))
{
diff --git a/indra/newview/llvoavatarself.cpp b/indra/newview/llvoavatarself.cpp
index 0a60ef4fff..22a52f8854 100755
--- a/indra/newview/llvoavatarself.cpp
+++ b/indra/newview/llvoavatarself.cpp
@@ -2066,6 +2066,11 @@ LLSD LLVOAvatarSelf::metricsData()
result["nearby_cloud"] = rez_counts[0];
result["nearby_gray"] = rez_counts[1];
result["nearby_textured"] = rez_counts[2];
+ result["timer_debug_existence"] = mDebugExistenceTimer.getElapsedTimeF32();
+ result["timer_ruth_debug"] = mRuthDebugTimer.getElapsedTimeF32();
+ result["timer_ruth"] = mRuthTimer.getElapsedTimeF32();
+ result["timer_invisible"] = mInvisibleTimer.getElapsedTimeF32();
+ result["timer_fully_loaded"] = mFullyLoadedTimer.getElapsedTimeF32();
return result;
}