You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by bu...@apache.org on 2002/10/22 17:36:08 UTC

DO NOT REPLY [Bug 13851] New: - java.lang.StackOverflowError in XString.equals()

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=13851>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=13851

java.lang.StackOverflowError in XString.equals()

           Summary: java.lang.StackOverflowError in XString.equals()
           Product: XalanJ2
           Version: CurrentCVS
          Platform: Sun
        OS/Version: Solaris
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: org.apache.xpath
        AssignedTo: xalan-dev@xml.apache.org
        ReportedBy: Wolfram.Eisert@dresdner-bank.com


In some special cases I get a StackOverflowError in method equals(XMLString), 
line #444 [ if (!obj2.hasString()) return obj2.equals(this); ]

I think this can occur if to XStringForChars-objects are compared, and both
objects haven't been used before. Than the hasString()-method of
XStringForChars returns false for both, resulting in an endless loop.

I patched XStringForChars method hasString() to return always true,
which works for me.

Don't know if this is the right way to solve this bug.