Package: xmlstarlet
Version: 1.0.1-2
Severity: important

XSLT transformation crashes with some scripts and XML files.

For example, when calling "xmlstarlet tr script.xsl data.xml" using
the files below, libc reports
*** glibc detected *** xmlstarlet: corrupted double-linked list: 
0x0000000001f0f6a0 ***
[... see below for the whole output]

The problem only occurs on our debian systems. XML Starlet version 1.0.1 on M$ 
Windows
works just fine using the same files.
A workaround for debian is to use xsltproc, which processes the files without 
errors.


----- Details ----
The example files are distilled from files used to generate C++ code.

--- script.xsl ---
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
        xmlns:xsl="http://www.w3.org/1999/XSL/Transform"; 
xmlns:resdef="http://www.exa-mplexx.de/XML/ResourceDefinition";>

        <xsl:output method="text" encoding="latin-1" />

        <xsl:template match="/resdef:resourceDefs">
                <xsl:text><![CDATA[
                #include <boost/tr1/memory.hpp>
                ]]></xsl:text>
                <xsl:text>
                namespace </xsl:text>
                <xsl:value-of select="@namespace" />
                <xsl:text><![CDATA[
        ]]></xsl:text>

                <xsl:apply-templates select="./resdef:resourceType" />
        </xsl:template>

        <xsl:template match="resdef:resourceType">
                <xsl:text>

                /* --------------------------------- */
                /** Ressource: </xsl:text>
        </xsl:template>

</xsl:stylesheet>
--- (end of script.xsl) ---

--- data.xml ---
<?xml version="1.0" encoding="iso-8859-1" ?>
<resourceDefs namespace="ResourceTests" 
xmlns="http://www.exa-mplexx.de/XML/ResourceDefinition";>
  <resourceType doc="some doc" name="Test">
    <simpleEntry name="SomeSizeValue" default="123" type="size" doc="some doc"/>
  </resourceType>
  <resourceType name="NestedData" doc="some doc">
    <simpleEntry name="NestedByte" default="254" type="uint8" doc="some doc"/>
  </resourceType>
</resourceDefs>
--- (end of data.xml) ---

--- error message reported when calling ---
*** glibc detected *** xmlstarlet: corrupted double-linked list: 
0x00000000007576a0 ***
======= Backtrace: =========
/lib/libc.so.6[0x7fbe68d61d16]
/lib/libc.so.6[0x7fbe68d6214d]
/lib/libc.so.6[0x7fbe68d64454]
/lib/libc.so.6(__libc_malloc+0x70)[0x7fbe68d66aa0]
/usr/lib/libxml2.so.2(xmlBufferCreate+0x3e)[0x7fbe6953313e]
/usr/lib/libxml2.so.2(xmlAllocOutputBufferInternal+0x35)[0x7fbe6953e9c5]
/usr/lib/libxml2.so.2(xmlOutputBufferCreateFile+0x23)[0x7fbe6953eb53]
/usr/lib/libxslt.so.1(xsltSaveResultToFile+0x9a)[0x7fbe6983f58a]
xmlstarlet[0x4113e9]
xmlstarlet[0x4117d0]
xmlstarlet[0x40d451]
xmlstarlet[0x403bad]
/lib/libc.so.6(__libc_start_main+0xfd)[0x7fbe68d0fabd]
xmlstarlet[0x40387a]
======= Memory map: ========
00400000-00417000 r-xp 00000000 08:01 11239609                           
/usr/bin/xmlstarlet
00517000-00518000 rw-p 00017000 08:01 11239609                           
/usr/bin/xmlstarlet
00518000-00561000 rw-p 00000000 00:00 0
00739000-00778000 rw-p 00000000 00:00 0                                  [heap]
7fbe64000000-7fbe64021000 rw-p 00000000 00:00 0
7fbe64021000-7fbe68000000 ---p 00000000 00:00 0
7fbe6845c000-7fbe68472000 r-xp 00000000 08:01 753723                     
/lib/libgcc_s.so.1
7fbe68472000-7fbe68671000 ---p 00016000 08:01 753723                     
/lib/libgcc_s.so.1
7fbe68671000-7fbe68672000 rw-p 00015000 08:01 753723                     
/lib/libgcc_s.so.1
7fbe68672000-7fbe68675000 r-xp 00000000 08:01 8359889                    
/usr/lib/libgpg-error.so.0.4.0
7fbe68675000-7fbe68874000 ---p 00003000 08:01 8359889                    
/usr/lib/libgpg-error.so.0.4.0
7fbe68874000-7fbe68875000 rw-p 00002000 08:01 8359889                    
/usr/lib/libgpg-error.so.0.4.0
7fbe68875000-7fbe68877000 r-xp 00000000 08:01 753698                     
/lib/libdl-2.10.2.so
7fbe68877000-7fbe68a77000 ---p 00002000 08:01 753698                     
/lib/libdl-2.10.2.so
7fbe68a77000-7fbe68a78000 r--p 00002000 08:01 753698                     
/lib/libdl-2.10.2.so
7fbe68a78000-7fbe68a79000 rw-p 00003000 08:01 753698                     
/lib/libdl-2.10.2.so
7fbe68a79000-7fbe68aed000 r-xp 00000000 08:01 8359891                    
/usr/lib/libgcrypt.so.11.5.3
7fbe68aed000-7fbe68ced000 ---p 00074000 08:01 8359891                    
/usr/lib/libgcrypt.so.11.5.3
7fbe68ced000-7fbe68cf1000 rw-p 00074000 08:01 8359891                    
/usr/lib/libgcrypt.so.11.5.3
7fbe68cf1000-7fbe68e3b000 r-xp 00000000 08:01 753692                     
/lib/libc-2.10.2.so
7fbe68e3b000-7fbe6903b000 ---p 0014a000 08:01 753692                     
/lib/libc-2.10.2.so
7fbe6903b000-7fbe6903f000 r--p 0014a000 08:01 753692                     
/lib/libc-2.10.2.so
7fbe6903f000-7fbe69040000 rw-p 0014e000 08:01 753692                     
/lib/libc-2.10.2.so
7fbe69040000-7fbe69045000 rw-p 00000000 00:00 0
7fbe69045000-7fbe690c6000 r-xp 00000000 08:01 753696                     
/lib/libm-2.10.2.so
7fbe690c6000-7fbe692c5000 ---p 00081000 08:01 753696                     
/lib/libm-2.10.2.so
7fbe692c5000-7fbe692c6000 r--p 00080000 08:01 753696                     
/lib/libm-2.10.2.so
7fbe692c6000-7fbe692c7000 rw-p 00081000 08:01 753696                     
/lib/libm-2.10.2.so
7fbe692c7000-7fbe692de000 r-xp 00000000 08:01 8357741                    
/usr/lib/libz.so.1.2.3.4
7fbe692de000-7fbe694dd000 ---p 00017000 08:01 8357741                    
/usr/lib/libz.so.1.2.3.4
7fbe694dd000-7fbe694de000 rw-p 00016000 08:01 8357741                    
/usr/lib/libz.so.1.2.3.4
7fbe694de000-7fbe69624000 r-xp 00000000 08:01 8358716                    
/usr/lib/libxml2.so.2.7.7
7fbe69624000-7fbe69823000 ---p 00146000 08:01 8358716                    
/usr/lib/libxml2.so.2.7.7
7fbe69823000-7fbe6982d000 rw-p 00145000 08:01 8358716                    
/usr/lib/libxml2.so.2.7.7
7fbe6982d000-7fbe6982e000 rw-p 00000000 00:00 0
7fbe6982e000-7fbe69869000 r-xp 00000000 08:01 8360407                    
/usr/lib/libxslt.so.1.1.26
7fbe69869000-7fbe69a68000 ---p 0003b000 08:01 8360407                    
/usr/lib/libxslt.so.1.1.26
7fbe69a68000-7fbe69a6a000 rw-p 0003a000 08:01 8360407                    
/usr/lib/libxslt.so.1.1.26
7fbe69a6a000-7fbe69a7d000 r-xp 00000000 08:01 8360180                    
/usr/lib/libexslt.so.0.8.15
7fbe69a7d000-7fbe69c7d000 ---p 00013000 08:01 8360180                    
/usr/lib/libexslt.so.0.8.15
7fbe69c7d000-7fbe69c7e000 rw-p 00013000 08:01 8360180                    
/usr/lib/libexslt.so.0.8.15
7fbe69c7e000-7fbe69c9b000 r-xp 00000000 08:01 753676                     
/lib/ld-2.10.2.so
7fbe69e7a000-7fbe69e7f000 rw-p 00000000 00:00 0
7fbe69e90000-7fbe69e97000 r--s 00000000 08:01 8357943                    
/usr/lib/gconv/gconv-modules.cache
7fbe69e97000-7fbe69e9a000 rw-p 00000000 00:00 0
7fbe69e9a000-7fbe69e9b000 r--p 0001c000 08:01 753676                     
/lib/ld-2.10.2.so
7fbe69e9b000-7fbe69e9c000 rw-p 0001d000 08:01 753676                     
/lib/ld-2.10.2.so
7fff1e4c4000-7fff1e4d9000 rw-p 00000000 00:00 0                          [stack]
7fff1e5ff000-7fff1e600000 r-xp 00000000 00:00 0                          [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  
[vsyscall]
Abgebrochen
--- (end of error message...) ---

-- System Information:
Debian Release: squeeze/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.31.12-rt20-1-amd64 (SMP w/4 CPU cores; PREEMPT)
Locale: lang=de...@euro, lc_ctype=de...@euro (charmap=ISO-8859-15)
Shell: /bin/sh linked to /bin/dash

Versions of packages xmlstarlet depends on:
ii  libc6                   2.10.2-6         Embedded GNU C Library: Shared lib
ii  libxml2                 2.7.7.dfsg-2     GNOME XML library
ii  libxslt1.1              1.1.26-3         XSLT processing library - runtime
ii  zlib1g                  1:1.2.3.4.dfsg-3 compression library - runtime

xmlstarlet recommends no packages.

xmlstarlet suggests no packages.

-- no debconf information

-- 
GRATIS für alle GMX-Mitglieder: Die maxdome Movie-FLAT!
Jetzt freischalten unter http://portal.gmx.net/de/go/maxdome01



-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]

Reply via email to