RootCauseunvalidated
xmlCreateEntity() in entities.c stores short (<5 byte) entity content, plus ExternalID/SystemID, by calling xmlDictLookup(dict, ...). Tension: The in-place zeroing therefore corrupts the dict: the stored hash no longer matches the mutated string. Outcome: the diff modifies entities.c xmlCreateEntity + xmlFreeEntity to stop using the dict for content/ExternalID/SystemID/orig and use xmlStrdup instead.
bdaa803d-7b14-49ea-8aa7-1b1e8f475361
xmlCreateEntity() in entities.c stores short (<5 byte) entity content, plus ExternalID/SystemID, by calling xmlDictLookup(dict, ...). Tension: The in-place zeroing therefore corrupts the dict: the stored hash no longer matches the mutated string. Outcome: the diff modifies entities.c xmlCreateEntity + xmlFreeEntity to stop using the dict for content/ExternalID/SystemID/orig and use xmlStrdup instead.