diff --git a/indra/newview/llfloatermodelpreview.cpp b/indra/newview/llfloatermodelpreview.cpp
index b4e62f2ef3c2ea65e2f71f63e91ba0247609d63d..d843278b22fe635526a73dd542800eb230028a50 100644
--- a/indra/newview/llfloatermodelpreview.cpp
+++ b/indra/newview/llfloatermodelpreview.cpp
@@ -133,7 +133,7 @@ mAvatarTabIndex(0)
 	sInstance = this;
 	mLastMouseX = 0;
 	mLastMouseY = 0;
-	mStatusLock = new LLMutex();
+	mStatusLock = std::make_unique<LLMutex>();
 	mModelPreview = NULL;
 
 	mLODMode[LLModel::LOD_HIGH] = 0;
@@ -314,8 +314,7 @@ LLFloaterModelPreview::~LLFloaterModelPreview()
 		delete mModelPreview;
 	}
 
-	delete mStatusLock;
-	mStatusLock = NULL;
+    mStatusLock.reset();
 }
 
 void LLFloaterModelPreview::initModelPreview()
@@ -1659,7 +1658,7 @@ void LLFloaterModelPreview::setCtrlLoadFromFile(S32 lod)
 
 void LLFloaterModelPreview::setStatusMessage(const std::string& msg)
 {
-	LLMutexLock lock(mStatusLock);
+	LLMutexLock lock(mStatusLock.get());
 	mStatusMessage = msg;
 }
 
diff --git a/indra/newview/llfloatermodelpreview.h b/indra/newview/llfloatermodelpreview.h
index 318f2ddfe76cd883abccd272309d147b4c541529..e522f566a2d70cf36cd686b4240d238c66761e07 100644
--- a/indra/newview/llfloatermodelpreview.h
+++ b/indra/newview/llfloatermodelpreview.h
@@ -201,7 +201,7 @@ class LLFloaterModelPreview final : public LLFloaterModelUploadBase
 	// 2 - use LoD above
 	S32 mLODMode[4];
 
-	LLMutex* mStatusLock;
+	std::unique_ptr<LLMutex> mStatusLock;
 
 	LLSD mModelPhysicsFee;