Details
Description
DOMElement::setIdAttribute*() leaks when repeatedly called for an attribute that
is already set as an ID.
More specifically, DOMAttrImpl::addAttrToIDNodeMap() adds the attribute to the
DOMNodeIDMap whether or not it is already there.
The fix is:
File: src/xercesc/dom/impl/DOMAttrImpl.hpp
Function: inline void DOMAttrImpl::addAttrToIDNodeMap()
Insert at the start of the function:
if (fNode.isIdAttr())
return;
– merlin