You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by "Aleksandr Vinokurov (JIRA)" <xa...@xml.apache.org> on 2008/05/07 19:58:55 UTC

[jira] Created: (XALANC-673) Assertion failed with XalanDOMString::substr

Assertion failed with XalanDOMString::substr
--------------------------------------------

                 Key: XALANC-673
                 URL: https://issues.apache.org/jira/browse/XALANC-673
             Project: XalanC
          Issue Type: Bug
          Components: XalanC
    Affects Versions: 1.10
         Environment: SunOS 5.9
Generic_118558-30 sun4u sparc SUNW,Sun-Fire-280R, 32 bit compilation fails with this assertion, when 64 bit not
            Reporter: Aleksandr Vinokurov
            Priority: Trivial


There is an assertion failure with this code:

-----------------------<cut>-------------------------<

#include <xalanc/XalanTransformer/XalanTransformer.hpp>
#include <xalanc/XalanDOM/XalanDOMString.hpp>

XALAN_USING(XALAN_CPP_NAMESPACE, XalanDOMString)

int main(void) {
        XALAN_USING_XERCES(XMLPlatformUtils)
        XALAN_USING_XALAN(XalanTransformer)

        XMLPlatformUtils::Initialize();
        XalanTransformer::initialize();

        XalanDOMString a("xxxxxxxxxxx"), b;

        a.substr(b);        //the same as a.substr(b, 0,
XalanDOMString::npos);

        return 0;
}

-----------------------<cut>-------------------------<


Here goes the output:

-----------------------<cut>-------------------------<
Assertion failed: thePosition < theSource.size() && thePosition + theCount
<= theSource.size(), file
/u02/home/avinokur/xalan-c/xml-xalan/c/src/xalanc/XalanDOM/XalanDOMString.cp
p, line 224
Abort (core dumped)
-----------------------<cut>-------------------------<


As I've found the assertion fails in "thePosition + theCount <=
theSource.size()" code, computing it to "0 + 4294967295 <= 11". Trying
"a.substr(b, 1)", the condition will be "1 + 4294967295 <= 11" which is "0 <
11" due to "typedef unsigned int    size_type;" code from
``xalanc/XalanDOM/XalanDOMString.hpp''.

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


[jira] Resolved: (XALANC-673) Assertion failed with XalanDOMString::substr

Posted by "David Bertoni (JIRA)" <xa...@xml.apache.org>.
     [ https://issues.apache.org/jira/browse/XALANC-673?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

David Bertoni resolved XALANC-673.
----------------------------------

    Resolution: Fixed

Patch committed.

> Assertion failed with XalanDOMString::substr
> --------------------------------------------
>
>                 Key: XALANC-673
>                 URL: https://issues.apache.org/jira/browse/XALANC-673
>             Project: XalanC
>          Issue Type: Bug
>          Components: XalanC
>    Affects Versions: 1.10
>         Environment: SunOS 5.9
> Generic_118558-30 sun4u sparc SUNW,Sun-Fire-280R, 32 bit compilation fails with this assertion, when 64 bit not
>            Reporter: Aleksandr Vinokurov
>            Assignee: David Bertoni
>            Priority: Trivial
>         Attachments: xalanc-673.patch
>
>   Original Estimate: 0.5h
>  Remaining Estimate: 0.5h
>
> There is an assertion failure with this code:
> -----------------------<cut>-------------------------<
> #include <xalanc/XalanTransformer/XalanTransformer.hpp>
> #include <xalanc/XalanDOM/XalanDOMString.hpp>
> XALAN_USING(XALAN_CPP_NAMESPACE, XalanDOMString)
> int main(void) {
>         XALAN_USING_XERCES(XMLPlatformUtils)
>         XALAN_USING_XALAN(XalanTransformer)
>         XMLPlatformUtils::Initialize();
>         XalanTransformer::initialize();
>         XalanDOMString a("xxxxxxxxxxx"), b;
>         a.substr(b);        //the same as a.substr(b, 0,
> XalanDOMString::npos);
>         return 0;
> }
> -----------------------<cut>-------------------------<
> Here goes the output:
> -----------------------<cut>-------------------------<
> Assertion failed: thePosition < theSource.size() && thePosition + theCount
> <= theSource.size(), file
> /u02/home/avinokur/xalan-c/xml-xalan/c/src/xalanc/XalanDOM/XalanDOMString.cp
> p, line 224
> Abort (core dumped)
> -----------------------<cut>-------------------------<
> As I've found the assertion fails in "thePosition + theCount <=
> theSource.size()" code, computing it to "0 + 4294967295 <= 11". Trying
> "a.substr(b, 1)", the condition will be "1 + 4294967295 <= 11" which is "0 <
> 11" due to "typedef unsigned int    size_type;" code from
> ``xalanc/XalanDOM/XalanDOMString.hpp''.

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


[jira] Assigned: (XALANC-673) Assertion failed with XalanDOMString::substr

Posted by "David Bertoni (JIRA)" <xa...@xml.apache.org>.
     [ https://issues.apache.org/jira/browse/XALANC-673?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

David Bertoni reassigned XALANC-673:
------------------------------------

    Assignee: David Bertoni

> Assertion failed with XalanDOMString::substr
> --------------------------------------------
>
>                 Key: XALANC-673
>                 URL: https://issues.apache.org/jira/browse/XALANC-673
>             Project: XalanC
>          Issue Type: Bug
>          Components: XalanC
>    Affects Versions: 1.10
>         Environment: SunOS 5.9
> Generic_118558-30 sun4u sparc SUNW,Sun-Fire-280R, 32 bit compilation fails with this assertion, when 64 bit not
>            Reporter: Aleksandr Vinokurov
>            Assignee: David Bertoni
>            Priority: Trivial
>         Attachments: xalanc-673.patch
>
>   Original Estimate: 0.5h
>  Remaining Estimate: 0.5h
>
> There is an assertion failure with this code:
> -----------------------<cut>-------------------------<
> #include <xalanc/XalanTransformer/XalanTransformer.hpp>
> #include <xalanc/XalanDOM/XalanDOMString.hpp>
> XALAN_USING(XALAN_CPP_NAMESPACE, XalanDOMString)
> int main(void) {
>         XALAN_USING_XERCES(XMLPlatformUtils)
>         XALAN_USING_XALAN(XalanTransformer)
>         XMLPlatformUtils::Initialize();
>         XalanTransformer::initialize();
>         XalanDOMString a("xxxxxxxxxxx"), b;
>         a.substr(b);        //the same as a.substr(b, 0,
> XalanDOMString::npos);
>         return 0;
> }
> -----------------------<cut>-------------------------<
> Here goes the output:
> -----------------------<cut>-------------------------<
> Assertion failed: thePosition < theSource.size() && thePosition + theCount
> <= theSource.size(), file
> /u02/home/avinokur/xalan-c/xml-xalan/c/src/xalanc/XalanDOM/XalanDOMString.cp
> p, line 224
> Abort (core dumped)
> -----------------------<cut>-------------------------<
> As I've found the assertion fails in "thePosition + theCount <=
> theSource.size()" code, computing it to "0 + 4294967295 <= 11". Trying
> "a.substr(b, 1)", the condition will be "1 + 4294967295 <= 11" which is "0 <
> 11" due to "typedef unsigned int    size_type;" code from
> ``xalanc/XalanDOM/XalanDOMString.hpp''.

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