From a27a06f0c3c6f8ba50972dc8081c82a5a866ddc1 Mon Sep 17 00:00:00 2001
From: Jason Hiser <jdhiser@gmail.com>
Date: Tue, 29 Jan 2019 23:19:20 +0000
Subject: [PATCH] fixed performance issue related to refactoring

---
 src/zipr.cpp | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/zipr.cpp b/src/zipr.cpp
index 00b27da56..3026af558 100644
--- a/src/zipr.cpp
+++ b/src/zipr.cpp
@@ -2738,23 +2738,21 @@ void ZiprImpl_t::UpdateScoops()
 			/*
 			 * Resize the contents.
 			 */
-			string scoop_contents = scoop->getContents();
+			auto scoop_contents = scoop->getContents();
 			scoop_contents.resize(scoop->getEnd()->getVirtualOffset() -
 			                      scoop->getStart()->getVirtualOffset() + 1);
-			scoop->setContents(scoop_contents);
 			assert(scoop->getSize() == scoop_contents.size());
 
 			/*
 			 * And now update the contents.
 			 */
-			for(VirtualOffset_t i=scoop->getStart()->getVirtualOffset();
+			for(auto i=scoop->getStart()->getVirtualOffset();
 			    i<= scoop->getEnd()->getVirtualOffset();
 			    i++)
 			{
-				auto str=scoop->getContents();
-				str[i-scoop->getStart()->getVirtualOffset()]=memory_space[i];
-				scoop->setContents(str);
+				scoop_contents[i-scoop->getStart()->getVirtualOffset()]=memory_space[i];
 			}
+			scoop->setContents(scoop_contents);
 			// m_firp->getDataScoops().insert(scoop); we added this earlier when we created the obj.
 			// jdh -- a bit worried that this'll break assumptions in other places
 			++it;
-- 
GitLab