Crash during xslt transformation on Linux machine (in ios::operator!) called
from StdBinInputStream.
------------------------------------------------------------------------------------------------------
Key: XALANC-608
URL: http://issues.apache.org/jira/browse/XALANC-608
Project: XalanC
Type: Bug
Components: XalanC
Versions: 1.9
Environment: Linux Redhat Red Hat Linux release 7.2 (Enigma)
Xerces 2.6, Xalan 1.9, ICU 3.2.
Compiler: g++ gcc version 2.96 20000731 (Red Hat Linux 7.1 2.96-98)
Reporter: Prasad Mysore
Our application uses xalan to map old xml documents to current version of our
application using xslt transformation. We use xercesC and xalanC with icu. On
linux this transformation causes a crash in one of the STL libraries. The same
code works perfectly ok on all other platforms (HP, solaris, aix and windows).
Below is the stack trace from the crash. Looks like its ! operator called
from the following code
unsigned int
StdBinInputStream::readBytes(
XMLByte* const toFill,
const unsigned int maxToRead)
{
assert(sizeof(XMLByte) == sizeof(char));
if (!m_stream)
{
return 0;
ICU, xalan and xerces compiled Red Hat Linux release 7.2 (Enigma)
Compiler: g++ gcc version 2.96 20000731 (Red Hat Linux 7.1 2.96-98)
Note that the lib names show libxerces*bmc.*. We downloaded the sources and
compiled it ourselves, but we have not made any changes to the source code. The
only change we made was to rename the libs so there is no conflict with other
third party tools we use.
I didnt get any responses on the mailing list or didnt see any bugs already
related to this. Is there something we are doing wrong? Looks like a bug to
me.
#0 0x41d86587 in ios::operator! () from /usr/lib/libstdc++-libc6.2-2.so.3
#1 0x402d4cdc in xercesc_2_6::XMLReader::refreshRawBuffer ()
from /devkits/xerces/xerces2_6/linux/xerces/lib/libxerces-cbmc.so.26
#2 0x402d1d17 in xercesc_2_6::XMLReader::XMLReader ()
from /devkits/xerces/xerces2_6/linux/xerces/lib/libxerces-cbmc.so.26
#3 0x40262a32 in xercesc_2_6::ReaderMgr::createReader ()
from /devkits/xerces/xerces2_6/linux/xerces/lib/libxerces-cbmc.so.26
#4 0x40244ac4 in xercesc_2_6::IGXMLScanner::scanReset ()
from /devkits/xerces/xerces2_6/linux/xerces/lib/libxerces-cbmc.so.26
#5 0x4024a1bd in xercesc_2_6::IGXMLScanner::scanDocument ()
from /devkits/xerces/xerces2_6/linux/xerces/lib/libxerces-cbmc.so.26
#6 0x40277cae in xercesc_2_6::SAXParser::parse ()
from /devkits/xerces/xerces2_6/linux/xerces/lib/libxerces-cbmc.so.26
#7 0x40cfea16 in xalanc_1_9::XercesParserLiaison::parseXMLStream
(this=0x80784e0,
[EMAIL PROTECTED], [EMAIL PROTECTED])
at
/home/essfs1/hwang/dev/xml-xalan/c/src/xalanc/XercesParserLiaison/XercesParserLiaison.cpp:254
#8 0x40d0ed18 in xalanc_1_9::XalanSourceTreeParserLiaison::parseXMLStream
(this=0x80784dc,
[EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED])
at
/home/essfs1/hwang/dev/xml-xalan/c/src/xalanc/XalanSourceTree/XalanSourceTreeParserLiaison.cpp:536
#9 0x40d55bc5 in xalanc_1_9::XSLTEngineImpl::processStylesheet
(this=0xbfffec40,
[EMAIL PROTECTED], [EMAIL PROTECTED])
at /home/essfs1/hwang/dev/xml-xalan/c/src/xalanc/XSLT/XSLTEngineImpl.cpp:503
#10 0x40d54e68 in xalanc_1_9::XSLTEngineImpl::process (this=0xbfffec40, [EMAIL
PROTECTED],
[EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED],
[EMAIL PROTECTED])
at /home/essfs1/hwang/dev/xml-xalan/c/src/xalanc/XSLT/XSLTEngineImpl.cpp:241
#11 0x40d67ad6 in xalanc_1_9::XalanTransformer::doTransform (this=0x8068160,
[EMAIL PROTECTED],
theCompiledStylesheet=0x0, theStylesheetSource=0xbffff360, [EMAIL
PROTECTED])
at
/home/essfs1/hwang/dev/xml-xalan/c/src/xalanc/XalanTransformer/XalanTransformer.cpp:1305
#12 0x40ed6fb3 in xalanc_1_9::XalanTransformer::transform (this=0x8068160,
[EMAIL PROTECTED],
[EMAIL PROTECTED], [EMAIL PROTECTED])
at
/home/essfs1/hwang/dev/xml-xalan/c/src/xalanc/XalanTransformer/XalanTransformer.hpp:167
#13 0x40d64b04 in xalanc_1_9::XalanTransformer::transform (this=0x8068160,
[EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED])
at
/home/essfs1/hwang/dev/xml-xalan/c/src/xalanc/XalanTransformer/XalanTransformer.cpp:341
#14 0x0804a02a in main (argc=2, argv=0xbffff734) at xalancrash.cpp:322
#15 0x41dd3336 in __libc_start_main (main=0x8049da0 <main>, argc=2,
ubp_av=0xbffff734,
init=0x80499d8 <_init>, fini=0x804a88c <_fini>, rtld_fini=0x4000d25c
<_dl_fini>,
stack_end=0xbffff72c) at ../sysdeps/generic/libc-start.c:129
I have a small reproducable case. I will try attaching the input xml document
and the source code to this bug.
Thanks
Prasad
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
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]