diff --git a/indra/llcommon/lleventtimer.cpp b/indra/llcommon/lleventtimer.cpp
index 3986dee3acbd52909dce42b23c418523efa2db02..f575a7b6bf2f30b8b7e48536084e3d4fb30ca260 100644
--- a/indra/llcommon/lleventtimer.cpp
+++ b/indra/llcommon/lleventtimer.cpp
@@ -57,7 +57,6 @@ LLEventTimer::~LLEventTimer()
 //static
 void LLEventTimer::updateClass() 
 {
-	std::list<LLEventTimer*> completed_timers;
 	for (auto& timer : instance_snapshot())
 	{
 		F32 et = timer.mEventTimer.getElapsedTimeF32();
@@ -65,20 +64,10 @@ void LLEventTimer::updateClass()
 			timer.mEventTimer.reset();
 			if ( timer.tick() )
 			{
-				completed_timers.push_back( &timer );
+				delete &timer;
 			}
 		}
 	}
-
-	if ( completed_timers.size() > 0 )
-	{
-		for (std::list<LLEventTimer*>::iterator completed_iter = completed_timers.begin(); 
-			 completed_iter != completed_timers.end(); 
-			 completed_iter++ ) 
-		{
-			delete *completed_iter;
-		}
-	}
 }