From 72d25825825e284d5589cdae75e325d612d1f530 Mon Sep 17 00:00:00 2001
From: Drake Arconis <drake@alchemyviewer.org>
Date: Sun, 10 Dec 2017 17:04:22 -0500
Subject: [PATCH] Cache some settings in hot path

---
 indra/newview/llviewerparcelmgr.cpp | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/indra/newview/llviewerparcelmgr.cpp b/indra/newview/llviewerparcelmgr.cpp
index 6119a58882..a311d8b880 100644
--- a/indra/newview/llviewerparcelmgr.cpp
+++ b/indra/newview/llviewerparcelmgr.cpp
@@ -857,7 +857,8 @@ LLParcel* LLViewerParcelMgr::getCollisionParcel() const
 
 void LLViewerParcelMgr::render()
 {
-	if (mSelected && mRenderSelection && gSavedSettings.getBOOL("RenderParcelSelection"))
+	static LLCachedControl<bool> render_parcel_selection(gSavedSettings, "RenderParcelSelection");
+	if (mSelected && mRenderSelection && render_parcel_selection)
 	{
 		// Rendering is done in agent-coordinates, so need to supply
 		// an appropriate offset to the render code.
@@ -877,7 +878,8 @@ void LLViewerParcelMgr::renderParcelCollision()
 		mRenderCollision = FALSE;
 	}
 
-	if (mRenderCollision && gSavedSettings.getBOOL("ShowBanLines"))
+	static LLCachedControl<bool> render_ban_line(gSavedSettings, "ShowBanLines");
+	if (mRenderCollision && render_ban_line)
 	{
 		LLViewerRegion* regionp = gAgent.getRegion();
 		if (regionp)
-- 
GitLab