[lxml-dev] Possible bug, libxml segfault?

Stefan Behnel stefan_ml at behnel.de
Sat May 30 13:25:34 CEST 2009


Hi,

Avleen Vig wrote:
> Background:
> We use libxml and libxslt in one of our applications (specifically, in
> Python via lxml).
> 
> Recently we've seen our application dying at strange times for no
> apparent reason.
> We managed to get a core file out of one crash, and the results of
> some of our debugging are here:
> http://xml.pastebin.com/m70c259d6
> (I'd be happy to poke more in a particular direction on there, I'm a
> bit new to gdb :)

The information you give is pretty informative. It just lacks a hint which
versions of lxml, libxml2 and libxslt you are using. Is this reproducible
with the latest release versions of all three?


> To me, it seems the parser is complaining while trying to parse the
> namespaces in the <stylesheet> node in transforms/_base.xslt
> The node for that opens like this:
> <xsl:stylesheet  version="1.0"
>                 xmlns="http://www.w3.org/1999/xhtml";
>                 xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
>                 xmlns:tfxslt="http://tfnet.co.uk/ns/tfxslt";
>                 xmlns:fb="http://www.facebook.com/2008/fbml";
>                 extension-element-prefixes="tfxslt str exsl"
>                 exclude-result-prefixes="str exsl tfxslt fb"
>                 xmlns:error="http://www.woome.com/error/";>

The triggering problem is that you try to exclude the namespace prefixes
"str" and "exsl" which are not defined in your stylesheet. This seems to
induce a problem in lxml's error reporting mechanism in your specific setup.

Is your application threaded? I do remember a couple of problems with
threaded error reporting in the past, although all of those were solved
back then.

Stefan



More information about the lxml-dev mailing list