diff --git a/indra/llcommon/llsingleton.h b/indra/llcommon/llsingleton.h
index 84afeb563eb2c73ffe092f9ec7ebca8db574729b..550e3c0d20da38099bf80b0d7d3ef4c9316cf71a 100644
--- a/indra/llcommon/llsingleton.h
+++ b/indra/llcommon/llsingleton.h
@@ -145,7 +145,9 @@ class LLSingleton : private boost::noncopyable
 		if (data.mInitState == DELETED)
 		{
 			llwarns << "Trying to access deleted singleton " << typeid(DERIVED_TYPE).name() << " creating new instance" << llendl;
-		}
+			data.mSingletonInstance = new DERIVED_TYPE(); 
+			data.mInitState = INITIALIZING;
+		}	// Fall into INITIALIZING case below 
 		
 		if (data.mInitState == INITIALIZING) 
 		{