Description: XMLString::collapseWS calls moveChars on overlapping memory
  XMLString::collapseWS calls XMLString::moveChars on overlapping memory. This
  is an issue since the moveChars implementation uses memcpy.  Such operations
  for memcpy are undefined.  This patch changes the moveChars to use memmove
  instead, which is safe for overlapping memory.
Author: Bill Blough <devel@blough.us>
Forwarded: https://issues.apache.org/jira/browse/XERCESC-2049
Last-Update: 2015-05-01
---
--- a/src/xercesc/util/XMLString.hpp
+++ b/src/xercesc/util/XMLString.hpp
@@ -1443,7 +1443,7 @@ inline void XMLString::moveChars(
                                 , const XMLCh* const srcStr
                                 , const XMLSize_t    count)
 {
-    memcpy(targetStr, srcStr, count * sizeof(XMLCh));
+    memmove(targetStr, srcStr, count * sizeof(XMLCh));
 }
 
 inline XMLSize_t XMLString::stringLen(const XMLCh* const src)
