NULL pointer access => crash
----------------------------
Key: XALANC-715
URL: https://issues.apache.org/jira/browse/XALANC-715
Project: XalanC
Issue Type: Bug
Components: XalanC
Affects Versions: CurrentCVS
Environment: Any
Reporter: Michael Kupchuk
Fix For: CurrentCVS
Attachments: crash.xsl, test.xml
Using a xalan:nodeset with an empty parameter causes it to return nodeset with
no data, no parents, completly empty, which in further operations causes a NULL
pointer access in release or debug assertion in debug.
Maybe it's not a "very proper" use of xalan:nodeset, but IMHO crash/assertion
is not the correct behaviour at all.
Here is an example xslt to reproduce crash:
<?xml version='1.0' encoding='windows-1251'?>
<xsl:stylesheet exclude-result-prefixes="xalan" xmlns:xalan =
"http://xml.apache.org/xalan" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:output method="html" indent="yes" encoding='windows-1251'/>
<xsl:strip-space elements="*"/>
<xsl:template name="head-with-info">
<xsl:param name="head"/>
<xsl:param name="info"/>
<xsl:if test="xalan:nodeset($head)/node()">
<div class="heading"><xsl:copy-of select="$head"/></div>
</xsl:if>
<xsl:if test="string-length($info)>0 and xalan:nodeset($info)/node()">
<div class="group-info"><xsl:copy-of select="$info"/></div>
</xsl:if>
</xsl:template>
<xsl:template match="*" name="test">
<xsl:value-of select="test_node/inner_test"/>
<xsl:call-template name="head-with-info">
<!-- <xsl:with-param name="head"><span>test head</span></xsl:with-param>
-->
<xsl:with-param name="info"><span>test info</span></xsl:with-param>
</xsl:call-template>
</xsl:template>
</xsl:stylesheet>
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]