diff --git a/src/xercesc/dom/impl/DOMStringPool.cpp b/src/xercesc/dom/impl/DOMStringPool.cpp index 7db164d1e51b616315a77cffa32ef8651cba4d13..3780733201ca22d3670eeba78a9e56942a38fe41 100644 --- a/src/xercesc/dom/impl/DOMStringPool.cpp +++ b/src/xercesc/dom/impl/DOMStringPool.cpp @@ -191,6 +191,9 @@ void DOMBuffer::append(const XMLCh* const chars, const unsigned int count) expandCapacity(actualCount); memcpy(&fBuffer[fIndex], chars, actualCount * sizeof(XMLCh)); fIndex += actualCount; + + // Keep it null terminated + fBuffer[fIndex] = 0; } void DOMBuffer::set(const XMLCh* const chars, const unsigned int count) @@ -203,6 +206,9 @@ void DOMBuffer::set(const XMLCh* const chars, const unsigned int count) expandCapacity(actualCount); memcpy(fBuffer, chars, actualCount * sizeof(XMLCh)); fIndex = actualCount; + + // Keep it null terminated + fBuffer[fIndex] = 0; }