From 2840bff7734fc7888da804d7aad4e9f252f33872 Mon Sep 17 00:00:00 2001
From: brad kittenbrink <brad@lindenlab.com>
Date: Tue, 26 Apr 2011 15:10:39 -0700
Subject: [PATCH] FIX VWR-25610: LLControlCroup::loadFromFile makes unnecessary
 copies of large LLSD objects.

---
 indra/llxml/llcontrol.cpp | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/indra/llxml/llcontrol.cpp b/indra/llxml/llcontrol.cpp
index 6e4364a20d2..a604c1e631b 100644
--- a/indra/llxml/llcontrol.cpp
+++ b/indra/llxml/llcontrol.cpp
@@ -839,7 +839,6 @@ U32 LLControlGroup::loadFromFile(const std::string& filename, bool set_default_v
 {
 	std::string name;
 	LLSD settings;
-	LLSD control_map;
 	llifstream infile;
 	infile.open(filename);
 	if(!infile.is_open())
@@ -864,7 +863,7 @@ U32 LLControlGroup::loadFromFile(const std::string& filename, bool set_default_v
 	{
 		bool persist = true;
 		name = (*itr).first;
-		control_map = (*itr).second;
+		LLSD const & control_map = (*itr).second;
 		
 		if(control_map.has("Persist")) 
 		{
-- 
GitLab