User-agent: Mozilla Thunderbird 0.8 (Windows/20040913)
If I put the doctype defs LAST and disable the sig, would that be a decent
workaround? Or does mxslt add the doctype before parsing any other xml?
Jeff
Carlo Contavalli wrote:
On Fri, Oct 15, 2004 at 02:19:52PM -0700, Jeff Rodriguez happily wrote:
Transforming with xsltproc yields just what I expect, a page full of HTML.
Transforming with modxslt-parse (or the apache module) yields an
essentially blank page.
If I pull out the doctype part in the xsl:output tag (in the xsl file):
<xsl:output method="xml" media-type="text/html"
doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"/>
Everything works fine however I can't specify a doctype and therefore get
valid XHTML :)
uhm ... another victim of a libxslt bug :(
it is a known problem. libxslt handles a pointer uncorrectly when the
two doctypes are specified (doctype-system and doctype-public), so
the first call to the function xmlAddChild zeroes the whole document.
I already reported it to the libxslt mailing list, but haven't had
any reply yet.
For a quick fix, you can either
1 - not specify one of the doctype- stuff, or tell the output
is html (if I don't remember wrong)
2 - recompile mod-xslt with something like:
CFLAGS='-DMXSLT_DISABLE_SIGNATURE' make
so the xmlAddChild won't be called by mod-xslt. If it is called
by any other function anyway, the document will still be zeroed,
but cannot do much in that case...
hope they'll do something asap.
Thank you for taking the time to prepare the mail,
Cheers,
Carlo