Hi there,
Our application to map from old xml documents to
current version using xsl 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;
Compiler on 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.
Is this a known issue by any chance. Had there
already been a fix for this. I couldnt find anything
using search.
Any ideas are appreciated.
Thanks,
Thunderstruck.
#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
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com