summaryrefslogtreecommitdiff
path: root/indra/newview/llviewerassetstats.cpp
diff options
context:
space:
mode:
authorRichard Linden <none@none>2012-11-30 15:48:22 -0800
committerRichard Linden <none@none>2012-11-30 15:48:22 -0800
commitca37317a1473bb79ef8de4f683231700cb9e062c (patch)
tree77acff27e91b28c93612d841b29eda95c00f1142 /indra/newview/llviewerassetstats.cpp
parent02d503bf8f8890c6d4b57dd09a1fde2973715b75 (diff)
SH-3406 WIP convert fast timers to lltrace system
fixed crash when sending viewer asset stats
Diffstat (limited to 'indra/newview/llviewerassetstats.cpp')
-rw-r--r--indra/newview/llviewerassetstats.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/indra/newview/llviewerassetstats.cpp b/indra/newview/llviewerassetstats.cpp
index d79d98aaaf..58936c3220 100644
--- a/indra/newview/llviewerassetstats.cpp
+++ b/indra/newview/llviewerassetstats.cpp
@@ -250,9 +250,18 @@ LLViewerAssetStats::LLViewerAssetStats(const LLViewerAssetStats & src)
{
src.mCurRecording->update();
mRegionRecordings = src.mRegionRecordings;
-
+
mCurRecording = &mRegionRecordings[mRegionHandle];
mCurRecording->stop();
+
+ // assume this is being passed to another thread, so make sure we have unique copies of recording data
+ for (PerRegionRecordingContainer::iterator it = mRegionRecordings.begin(), end_it = mRegionRecordings.end();
+ it != end_it;
+ ++it)
+ {
+ it->second.makeUnique();
+ }
+
LLStopWatchControlsMixin::initTo(src.getPlayState());
}