You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@xerces.apache.org by "Jay Berkenbilt (JIRA)" <xe...@xml.apache.org> on 2005/08/04 01:25:36 UTC

[jira] Created: (XERCESC-1470) segmentation fault in xerces 2.6.0 on this file for unknown reason

segmentation fault in xerces 2.6.0 on this file for unknown reason
------------------------------------------------------------------

         Key: XERCESC-1470
         URL: http://issues.apache.org/jira/browse/XERCESC-1470
     Project: Xerces-C++
        Type: Bug
  Components: SAX/SAX2  
    Versions: 2.6.0    
 Environment: Debian 3.1 with patch for issues 1282 and 1421
    Reporter: Jay Berkenbilt


Running SAX2Print on this file:

<t:a xmlns:t="T" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="T bug.xsd">
<t:b><i><e/></i></t:b>
<t:b><e a=""/></t:b>
</t:a>

with this schema:

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
 xmlns:t="T" targetNamespace="T" elementFormDefault="qualified">
 <xs:element name="a" type="t:A"/>
 <xs:complexType name="B">
  <xs:sequence>
   <xs:any processContents="lax"/>
  </xs:sequence>
 </xs:complexType>
 <xs:complexType name="A">
  <xs:sequence>
   <xs:element name="b" type="t:B" maxOccurs="2"/>
  </xs:sequence>
 </xs:complexType>
</xs:schema>

results in a segmentation fault with this stack trace:

#0  0x4017bce0 in xercesc_2_6::RefHashTableOf<xercesc_2_6::DTDAttDef>::findBucketElem () from /usr/lib/libxerces-c.so.26
#1  0x4017b9c1 in xercesc_2_6::RefHashTableOf<xercesc_2_6::DTDAttDef>::get ()
   from /usr/lib/libxerces-c.so.26
#2  0x4017d028 in xercesc_2_6::DTDElementDecl::getAttDef ()
   from /usr/lib/libxerces-c.so.26
#3  0x4019a212 in xercesc_2_6::IGXMLScanner::buildAttList ()
   from /usr/lib/libxerces-c.so.26
#4  0x401a6da8 in xercesc_2_6::IGXMLScanner::scanStartTagNS ()
   from /usr/lib/libxerces-c.so.26
#5  0x401a3332 in xercesc_2_6::IGXMLScanner::scanContent ()
   from /usr/lib/libxerces-c.so.26
#6  0x401a1ee1 in xercesc_2_6::IGXMLScanner::scanDocument ()
   from /usr/lib/libxerces-c.so.26
#7  0x40247150 in xercesc_2_6::XMLScanner::scanDocument ()
   from /usr/lib/libxerces-c.so.26
#8  0x402471d9 in xercesc_2_6::XMLScanner::scanDocument ()
   from /usr/lib/libxerces-c.so.26
#9  0x401cc66c in xercesc_2_6::SAX2XMLReaderImpl::parse ()
   from /usr/lib/libxerces-c.so.26
#10 0x0804cc6c in main ()

I'm sorry that I don't have full debug information, but hopefully this will give a clue as to where this may be crashing.  I have spent a few minutes trying to track it down, but have not been successful up to this point.  I can try testing this problem with the current subversion HEAD, but I need to be able to maintain binary compatibility with 2.6.0, so a small patch would be most welcome.  It's worth noting that no errors are reported when running this in 2.3.0.  We do not have an installation of 2.4.0 or 2.5.0 to test with.  Thanks.

-- 
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: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org


[jira] Commented: (XERCESC-1470) segmentation fault in xerces 2.6.0 on this file for unknown reason

Posted by "Jay Berkenbilt (JIRA)" <xe...@xml.apache.org>.
    [ http://issues.apache.org/jira/browse/XERCESC-1470?page=comments#action_12317635 ] 

Jay Berkenbilt commented on XERCESC-1470:
-----------------------------------------

This sounds great, thanks!  I'll make the suggested change locally and give it a try.  Thanks also for testing on the 2.7 branch.  Glad to hear it works.  I continue to be impressed at how quickly issues are addressed when they are raised. :-)

> segmentation fault in xerces 2.6.0 on this file for unknown reason
> ------------------------------------------------------------------
>
>          Key: XERCESC-1470
>          URL: http://issues.apache.org/jira/browse/XERCESC-1470
>      Project: Xerces-C++
>         Type: Bug
>   Components: SAX/SAX2
>     Versions: 2.6.0
>  Environment: Debian 3.1 with patch for issues 1282 and 1421
>     Reporter: Jay Berkenbilt

>
> Running SAX2Print on this file:
> <t:a xmlns:t="T" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="T bug.xsd">
> <t:b><i><e/></i></t:b>
> <t:b><e a=""/></t:b>
> </t:a>
> with this schema:
> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
>  xmlns:t="T" targetNamespace="T" elementFormDefault="qualified">
>  <xs:element name="a" type="t:A"/>
>  <xs:complexType name="B">
>   <xs:sequence>
>    <xs:any processContents="lax"/>
>   </xs:sequence>
>  </xs:complexType>
>  <xs:complexType name="A">
>   <xs:sequence>
>    <xs:element name="b" type="t:B" maxOccurs="2"/>
>   </xs:sequence>
>  </xs:complexType>
> </xs:schema>
> results in a segmentation fault with this stack trace:
> #0  0x4017bce0 in xercesc_2_6::RefHashTableOf<xercesc_2_6::DTDAttDef>::findBucketElem () from /usr/lib/libxerces-c.so.26
> #1  0x4017b9c1 in xercesc_2_6::RefHashTableOf<xercesc_2_6::DTDAttDef>::get ()
>    from /usr/lib/libxerces-c.so.26
> #2  0x4017d028 in xercesc_2_6::DTDElementDecl::getAttDef ()
>    from /usr/lib/libxerces-c.so.26
> #3  0x4019a212 in xercesc_2_6::IGXMLScanner::buildAttList ()
>    from /usr/lib/libxerces-c.so.26
> #4  0x401a6da8 in xercesc_2_6::IGXMLScanner::scanStartTagNS ()
>    from /usr/lib/libxerces-c.so.26
> #5  0x401a3332 in xercesc_2_6::IGXMLScanner::scanContent ()
>    from /usr/lib/libxerces-c.so.26
> #6  0x401a1ee1 in xercesc_2_6::IGXMLScanner::scanDocument ()
>    from /usr/lib/libxerces-c.so.26
> #7  0x40247150 in xercesc_2_6::XMLScanner::scanDocument ()
>    from /usr/lib/libxerces-c.so.26
> #8  0x402471d9 in xercesc_2_6::XMLScanner::scanDocument ()
>    from /usr/lib/libxerces-c.so.26
> #9  0x401cc66c in xercesc_2_6::SAX2XMLReaderImpl::parse ()
>    from /usr/lib/libxerces-c.so.26
> #10 0x0804cc6c in main ()
> I'm sorry that I don't have full debug information, but hopefully this will give a clue as to where this may be crashing.  I have spent a few minutes trying to track it down, but have not been successful up to this point.  I can try testing this problem with the current subversion HEAD, but I need to be able to maintain binary compatibility with 2.6.0, so a small patch would be most welcome.  It's worth noting that no errors are reported when running this in 2.3.0.  We do not have an installation of 2.4.0 or 2.5.0 to test with.  Thanks.

-- 
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: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org


[jira] Commented: (XERCESC-1470) segmentation fault in xerces 2.6.0 on this file for unknown reason

Posted by "cargilld (JIRA)" <xe...@xml.apache.org>.
    [ http://issues.apache.org/jira/browse/XERCESC-1470?page=comments#action_12317624 ] 

cargilld commented on XERCESC-1470:
-----------------------------------

Hi,
FYI, I tried this on the 2.7 branch and it works fine... 

David

> segmentation fault in xerces 2.6.0 on this file for unknown reason
> ------------------------------------------------------------------
>
>          Key: XERCESC-1470
>          URL: http://issues.apache.org/jira/browse/XERCESC-1470
>      Project: Xerces-C++
>         Type: Bug
>   Components: SAX/SAX2
>     Versions: 2.6.0
>  Environment: Debian 3.1 with patch for issues 1282 and 1421
>     Reporter: Jay Berkenbilt

>
> Running SAX2Print on this file:
> <t:a xmlns:t="T" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="T bug.xsd">
> <t:b><i><e/></i></t:b>
> <t:b><e a=""/></t:b>
> </t:a>
> with this schema:
> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
>  xmlns:t="T" targetNamespace="T" elementFormDefault="qualified">
>  <xs:element name="a" type="t:A"/>
>  <xs:complexType name="B">
>   <xs:sequence>
>    <xs:any processContents="lax"/>
>   </xs:sequence>
>  </xs:complexType>
>  <xs:complexType name="A">
>   <xs:sequence>
>    <xs:element name="b" type="t:B" maxOccurs="2"/>
>   </xs:sequence>
>  </xs:complexType>
> </xs:schema>
> results in a segmentation fault with this stack trace:
> #0  0x4017bce0 in xercesc_2_6::RefHashTableOf<xercesc_2_6::DTDAttDef>::findBucketElem () from /usr/lib/libxerces-c.so.26
> #1  0x4017b9c1 in xercesc_2_6::RefHashTableOf<xercesc_2_6::DTDAttDef>::get ()
>    from /usr/lib/libxerces-c.so.26
> #2  0x4017d028 in xercesc_2_6::DTDElementDecl::getAttDef ()
>    from /usr/lib/libxerces-c.so.26
> #3  0x4019a212 in xercesc_2_6::IGXMLScanner::buildAttList ()
>    from /usr/lib/libxerces-c.so.26
> #4  0x401a6da8 in xercesc_2_6::IGXMLScanner::scanStartTagNS ()
>    from /usr/lib/libxerces-c.so.26
> #5  0x401a3332 in xercesc_2_6::IGXMLScanner::scanContent ()
>    from /usr/lib/libxerces-c.so.26
> #6  0x401a1ee1 in xercesc_2_6::IGXMLScanner::scanDocument ()
>    from /usr/lib/libxerces-c.so.26
> #7  0x40247150 in xercesc_2_6::XMLScanner::scanDocument ()
>    from /usr/lib/libxerces-c.so.26
> #8  0x402471d9 in xercesc_2_6::XMLScanner::scanDocument ()
>    from /usr/lib/libxerces-c.so.26
> #9  0x401cc66c in xercesc_2_6::SAX2XMLReaderImpl::parse ()
>    from /usr/lib/libxerces-c.so.26
> #10 0x0804cc6c in main ()
> I'm sorry that I don't have full debug information, but hopefully this will give a clue as to where this may be crashing.  I have spent a few minutes trying to track it down, but have not been successful up to this point.  I can try testing this problem with the current subversion HEAD, but I need to be able to maintain binary compatibility with 2.6.0, so a small patch would be most welcome.  It's worth noting that no errors are reported when running this in 2.3.0.  We do not have an installation of 2.4.0 or 2.5.0 to test with.  Thanks.

-- 
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: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org


[jira] Resolved: (XERCESC-1470) segmentation fault in xerces 2.6.0 on this file for unknown reason

Posted by "Alberto Massari (JIRA)" <xe...@xml.apache.org>.
     [ http://issues.apache.org/jira/browse/XERCESC-1470?page=all ]
     
Alberto Massari resolved XERCESC-1470:
--------------------------------------

    Resolution: Won't Fix

Hi Jay,
the issue disappeared in version 1.89 of IGXMLScanner.cpp, as part of a general reorganization of the code. If you want to just fix this issue, change the two occurrences of 

            if(!elemDecl)
            {
                // look in the list of undeclared elements, as would have been done
                // before we made grammars stateless:
                elemDecl = fSchemaElemNonDeclPool->getByKey(nameRawBuf, uriId, Grammar::TOP_LEVEL_SCOPE);
            }

into

            if(!elemDecl)
            {
                    // switch back to original grammar first if necessary
                    if (orgGrammarUri != uriId) {
                        switchGrammar(original_uriStr);
                    }
                // look in the list of undeclared elements, as would have been done
                // before we made grammars stateless:
                elemDecl = fSchemaElemNonDeclPool->getByKey(nameRawBuf, uriId, Grammar::TOP_LEVEL_SCOPE);
            }



> segmentation fault in xerces 2.6.0 on this file for unknown reason
> ------------------------------------------------------------------
>
>          Key: XERCESC-1470
>          URL: http://issues.apache.org/jira/browse/XERCESC-1470
>      Project: Xerces-C++
>         Type: Bug
>   Components: SAX/SAX2
>     Versions: 2.6.0
>  Environment: Debian 3.1 with patch for issues 1282 and 1421
>     Reporter: Jay Berkenbilt

>
> Running SAX2Print on this file:
> <t:a xmlns:t="T" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="T bug.xsd">
> <t:b><i><e/></i></t:b>
> <t:b><e a=""/></t:b>
> </t:a>
> with this schema:
> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
>  xmlns:t="T" targetNamespace="T" elementFormDefault="qualified">
>  <xs:element name="a" type="t:A"/>
>  <xs:complexType name="B">
>   <xs:sequence>
>    <xs:any processContents="lax"/>
>   </xs:sequence>
>  </xs:complexType>
>  <xs:complexType name="A">
>   <xs:sequence>
>    <xs:element name="b" type="t:B" maxOccurs="2"/>
>   </xs:sequence>
>  </xs:complexType>
> </xs:schema>
> results in a segmentation fault with this stack trace:
> #0  0x4017bce0 in xercesc_2_6::RefHashTableOf<xercesc_2_6::DTDAttDef>::findBucketElem () from /usr/lib/libxerces-c.so.26
> #1  0x4017b9c1 in xercesc_2_6::RefHashTableOf<xercesc_2_6::DTDAttDef>::get ()
>    from /usr/lib/libxerces-c.so.26
> #2  0x4017d028 in xercesc_2_6::DTDElementDecl::getAttDef ()
>    from /usr/lib/libxerces-c.so.26
> #3  0x4019a212 in xercesc_2_6::IGXMLScanner::buildAttList ()
>    from /usr/lib/libxerces-c.so.26
> #4  0x401a6da8 in xercesc_2_6::IGXMLScanner::scanStartTagNS ()
>    from /usr/lib/libxerces-c.so.26
> #5  0x401a3332 in xercesc_2_6::IGXMLScanner::scanContent ()
>    from /usr/lib/libxerces-c.so.26
> #6  0x401a1ee1 in xercesc_2_6::IGXMLScanner::scanDocument ()
>    from /usr/lib/libxerces-c.so.26
> #7  0x40247150 in xercesc_2_6::XMLScanner::scanDocument ()
>    from /usr/lib/libxerces-c.so.26
> #8  0x402471d9 in xercesc_2_6::XMLScanner::scanDocument ()
>    from /usr/lib/libxerces-c.so.26
> #9  0x401cc66c in xercesc_2_6::SAX2XMLReaderImpl::parse ()
>    from /usr/lib/libxerces-c.so.26
> #10 0x0804cc6c in main ()
> I'm sorry that I don't have full debug information, but hopefully this will give a clue as to where this may be crashing.  I have spent a few minutes trying to track it down, but have not been successful up to this point.  I can try testing this problem with the current subversion HEAD, but I need to be able to maintain binary compatibility with 2.6.0, so a small patch would be most welcome.  It's worth noting that no errors are reported when running this in 2.3.0.  We do not have an installation of 2.4.0 or 2.5.0 to test with.  Thanks.

-- 
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: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org