[
https://issues.apache.org/jira/browse/XERCESC-1679?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Alberto Massari resolved XERCESC-1679.
--------------------------------------
Resolution: Duplicate
Duplicate of XERCESC-1555
> xercesc_2_7::XMLUTF8Transcoder::transcodeFrom has a Conditional jump or move
> depends on uninitialised value.
> ------------------------------------------------------------------------------------------------------------
>
> Key: XERCESC-1679
> URL: https://issues.apache.org/jira/browse/XERCESC-1679
> Project: Xerces-C++
> Issue Type: Bug
> Components: Utilities
> Affects Versions: 2.7.0
> Environment: Linux rhes-4 i686 gcc-3-2-3 32 bit
> Reporter: Philippe Forest
>
> The problem is that the value of the poiter get checked before the check to
> see if you have passed the end of the input buffer.
> in the file :XMLUTF8Transcoder.cpp on position 157.
> current code:
> } while (*srcPtr <= 127 && // <- this can cause a crash if
> this memory is not your.
> srcPtr != srcEnd &&
> outPtr != outEnd );
> should be:
> } while (
> srcPtr != srcEnd && // first check the end
> *srcPtr <= 127 && // then the content
> outPtr != outEnd );
> See valrind log:
> Thanks Let me know if you need more details.
> Phil.
> ==25072== Conditional jump or move depends on uninitialised value(s)
> ==25072== at 0x5170D2A:
> xercesc_2_7::XMLUTF8Transcoder::transcodeFrom(unsigned char const*, unsigned,
> unsigned short*, unsigned, unsigned&, unsigned char*)
> (XMLUTF8Transcoder.cpp:157)
> ==25072== by 0x5158D2F: xercesc_2_7::XMLReader::xcodeMoreChars(unsigned
> short*, unsigned char*, unsigned) (XMLReader.cpp:1707)
> ==25072== by 0x5156FC9: xercesc_2_7::XMLReader::refreshCharBuffer()
> (XMLReader.cpp:498)
> ==25072== by 0x50BB3A7: xercesc_2_7::XMLReader::peekNextChar(unsigned
> short&) (XMLReader.hpp:759)
> ==25072== by 0x50B933A: xercesc_2_7::ReaderMgr::peekNextChar()
> (ReaderMgr.cpp:163)
> ==25072== by 0x515DFA6: xercesc_2_7::XMLScanner::scanProlog()
> (XMLScanner.cpp:1237)
> ==25072== by 0x5085CC6:
> xercesc_2_7::IGXMLScanner::scanDocument(xercesc_2_7::InputSource const&)
> (IGXMLScanner.cpp:202)
> ==25072== by 0x50CC048:
> xercesc_2_7::SAX2XMLReaderImpl::parse(xercesc_2_7::InputSource const&)
> (SAX2XMLReaderImpl.cpp:396)
> ...
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]