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-03-01 18:10 |
Reporter | Michael Orlitzky | ||||
---|---|---|---|---|---|
Assigned To | John-Mark Bell | ||||
Priority | normal | Severity | major | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
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 |
Notes | |||||
|
|||||
|
|
Issue History | |||||
Date Modified | Username | Field | Change | ||
---|---|---|---|---|---|
2025-01-14 13:56 | Michael Orlitzky | New Issue | |||
2025-03-01 16:28 | John-Mark Bell | Note Added: 0002472 | |||
2025-03-01 18:09 | John-Mark Bell | Assigned To | => John-Mark Bell | ||
2025-03-01 18:09 | John-Mark Bell | Status | new => closed | ||
2025-03-01 18:09 | John-Mark Bell | Resolution | open => fixed | ||
2025-03-01 18:10 | John-Mark Bell | Status | closed => resolved |