diff --git a/indra/newview/llgltfmateriallist.cpp b/indra/newview/llgltfmateriallist.cpp
index 26980c77cd659bba1d85fd1d3ac37d89959c5afd..fa1190c4e15c06dfd42305ae6bd72514aec32b0b 100644
--- a/indra/newview/llgltfmateriallist.cpp
+++ b/indra/newview/llgltfmateriallist.cpp
@@ -333,8 +333,7 @@ namespace
 
 void LLGLTFMaterialList::applyOverrideMessage(LLMessageSystem* msg, const std::string& data_in)
 {
-    std::istringstream str(data_in);
-
+    boost::iostreams::stream<boost::iostreams::array_source> str(data_in.data(), data_in.size());
     LLSD data;
 
     LLSDSerialize::fromNotation(data, str, data_in.length());