diff --git a/indra/llxml/llcontrol.cpp b/indra/llxml/llcontrol.cpp
index 2822b767e5fac55250b2fe41aeac88b75eb83c81..85d369b8cdd943666a91019780e196545411edd4 100644
--- a/indra/llxml/llcontrol.cpp
+++ b/indra/llxml/llcontrol.cpp
@@ -174,7 +174,8 @@ LLSD LLControlVariable::getComparableValue(const LLSD& value)
 	{
 		LLPointer<LLSDNotationParser> parser = new LLSDNotationParser;
 		LLSD result;
-		if (parser->parse(std::stringstream(value.asString()), result, LLSDSerialize::SIZE_UNLIMITED) != LLSDParser::PARSE_FAILURE)
+		std::stringstream value_stream(value.asString());
+		if (parser->parse(value_stream, result, LLSDSerialize::SIZE_UNLIMITED) != LLSDParser::PARSE_FAILURE)
 		{
 			storable_value = result;
 		}