diff --git a/src/xercesc/internal/SGXMLScanner.cpp b/src/xercesc/internal/SGXMLScanner.cpp
index bda90e8ab7c25ce5b81b818c9faf430271ba0acc..22ea52c7c1d8cd54cb4178755a28a0f468185e26 100644
--- a/src/xercesc/internal/SGXMLScanner.cpp
+++ b/src/xercesc/internal/SGXMLScanner.cpp
@@ -1545,7 +1545,7 @@ bool SGXMLScanner::scanStartTag(bool& gotData)
     if (isRoot)
     {
         fRootGrammar = fGrammar;
-        fRootElemName = XMLString::replicate(qnameRawBuf);
+        fRootElemName = XMLString::replicate(qnameRawBuf, fMemoryManager);
     }
 
     if (fPSVIHandler)