[jira] [Commented] (XALANJ-2169) Functions on Nodes in NodeList fail with java.lang.ArrayIndexOutOfBoundsException: -1

"Uwe Schindler (Jira)" <[email protected]>
Newsgroups gmane.text.xml.xalan.devel
Message-ID <[email protected]>
    [ https://issues.apache.org/jira/browse/XALANJ-2169?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18018132#comment-18018132 ] 

Uwe Schindler commented on XALANJ-2169:
---------------------------------------

FYI: The bug has been resolved in the JDK: https://github.com/openjdk/jdk/commit/4b9b3c027faee607fd54953020989106209eb47f

XALAN-J still has the old code. The code in JDK is still Apache Licene 2.0, so we can just apply the same fix here.

> Functions on Nodes in NodeList fail with java.lang.ArrayIndexOutOfBoundsException: -1
> -------------------------------------------------------------------------------------
>
>                 Key: XALANJ-2169
>                 URL: https://issues.apache.org/jira/browse/XALANJ-2169
>             Project: XalanJ2
>          Issue Type: Bug
>          Components: DTM, Xalan, XSLTC
>    Affects Versions: 2.6
>         Environment: Java 1.4.2_06; Xalan 2.6.0; Xerces 2.6.2; Windows 2000
>            Reporter: Glen Blanchard
>            Priority: Major
>         Attachments: Extension.java, booklist.xml, test.xsl
>
>
> When using an extension over a RTF converted to a NodeList using the nodeset extension function, some methods on the Nodes in the NodeList throw and java.lang.ArrayIndexOutOfBoundsException: -1
> Tracing through the code it comes down to the DTMDefaultBase.makeNodeIdentity function returning a DTM.NULL because the nodeHandle passed in doesn't belong to "this" DTMDefaultBase instance.
> Comment extracted from DTMDefaultBase:
> // %REVIEW% Wish I didn't have to perform the pre-test, but
> // someone is apparently asking DTMs whether they contain nodes
> // which really don't belong to them. That's probably a bug
> // which should be fixed, but until it is:
> if(m_mgrDefault.m_dtms[whichDTMindex]!=this)
>     return NULL;
> The full call path is:
> Caused by: java.lang.ArrayIndexOutOfBoundsException: -1
>         at org.apache.xml.utils.SuballocatedIntVector.elementAt(SuballocatedIntVector.java:438)
>         at org.apache.xml.dtm.ref.DTMDefaultBase._firstch(DTMDefaultBase.java:526)
>         at org.apache.xml.dtm.ref.DTMDefaultBase.getFirstChild(DTMDefaultBase.java:973)
>         at org.apache.xml.dtm.ref.DTMNodeProxy.getFirstChild(DTMNodeProxy.java:370)
> Let me know if more detail is required as this is the last hurdle for a major speed improvement.
> Thanks



--
This message was sent by Atlassian Jira
(v8.20.10#820010)
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.