MantisBT - LibDOM | |||||
View Issue Details | |||||
ID | Project | Category | View Status | Date Submitted | Last Update |
0002890 | LibDOM | [All Projects] General | public | 2025-01-14 13:56 | 2025-01-14 13:56 |
Reporter | Michael Orlitzky | ||||
---|---|---|---|---|---|
Assigned To | |||||
Priority | normal | Severity | major | Reproducibility | always |
Status | new | Resolution | open | ||
Platform | OS | OS Version | |||
Fixed in CI build # | |||||
Reported in CI build # | |||||
Summary | 0002890: libdom crashes when built with libxml2-2.13.x | ||||
Description | Apparently 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 | ||||
Tags | No tags attached. | ||||
Relationships | |||||
Attached Files |
There are no notes attached to this issue. |
Issue History | |||||
Date Modified | Username | Field | Change | ||
---|---|---|---|---|---|
2025-01-14 13:56 | Michael Orlitzky | New Issue |