diff --git a/indra/llcommon/lltracerecording.cpp b/indra/llcommon/lltracerecording.cpp
index c44cc8a8a70287de1b3a5a7bba5ffd13c3622188..f0b17ef1004bb595c442800e4d75429bd6f7d017 100644
--- a/indra/llcommon/lltracerecording.cpp
+++ b/indra/llcommon/lltracerecording.cpp
@@ -65,8 +65,12 @@ void Recording::reset()
 
 void Recording::update()
 {
-	mElapsedSeconds = 0.0;
-	mSamplingTimer.reset();
+	if (mIsStarted)
+	{
+		LLTrace::get_thread_recorder()->update(this);
+		mElapsedSeconds = 0.0;
+		mSamplingTimer.reset();
+	}
 }
 
 void Recording::resume()