MantisBT - LibDOM
View Issue Details
0002890LibDOM[All Projects] Generalpublic2025-01-14 13:562025-01-14 13:56
ReporterMichael Orlitzky 
Assigned To 
PrioritynormalSeveritymajorReproducibilityalways
StatusnewResolutionopen 
PlatformOSOS Version
Fixed in CI build #
Reported in CI build #
Summary0002890: libdom crashes when built with libxml2-2.13.x
DescriptionApparently libdom is relying on some internal details of libxml2 during parsing (bindings/xml/libxml_xmlparser.c). The first indication of this is that the libdom test suite fails after upgrading to libxml2-2.13.5. Upon closer inspection, libdom is segfaulting because there's a NULL where it isn't expecting one (missing parent).

In short, the problem is with the assumption that this will retrieve the parent element:

  xmlNodePtr parent = parser->xml_ctx->node;

In libxml2-2.13.x, XML entities are parsed into a dummy element, and we are retrieving that dummy element with the code above. In earlier versions of libxml2, the same entities were parsed into a temporary context where xml_ctx->node by coincidence still points to the previous node, so it happened to work.

Refs:

* https://bugs.gentoo.org/946980
* https://gitlab.gnome.org/GNOME/libxml2/-/issues/837
TagsNo tags attached.
Attached Files

There are no notes attached to this issue.

Issue History
2025-01-14 13:56Michael OrlitzkyNew Issue