2025-01-30 18:29 UTC

View Issue Details Jump to Notes ]
IDProjectCategoryView StatusLast Update
0002890LibDOM[All Projects] Generalpublic2025-01-14 13:56
ReporterMichael Orlitzky 
Assigned To 
PrioritynormalSeveritymajorReproducibilityalways
StatusnewResolutionopen 
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.
Fixed in CI build #
Reported in CI build #
Attached Files

-Relationships
+Relationships

-Notes
There are no notes attached to this issue.
+Notes

-Issue History
Date Modified Username Field Change
2025-01-14 13:56 Michael Orlitzky New Issue
+Issue History