Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-7007540

ArrayList.size() returned a negative value

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Cannot Reproduce
    • Icon: P4 P4
    • None
    • 6
    • core-libs

      FULL PRODUCT VERSION :
      java version "1.6.0_22"
      Java(TM) SE Runtime Environment (build 1.6.0_22-b04)
      Java Hotspot(TM) 64-Bit Server VM (build 17.1-b03, mixed mode)

      ADDITIONAL OS VERSION INFORMATION :
      Microsoft Windows [Version 6.1.7600]

      A DESCRIPTION OF THE PROBLEM :
      During the execution of our RCP application, we hit a line of code deep in the eclipse SWT code, which looks like:

      return (AbstractEntry[]) elements.toArray(new AbstractEntry[elements.size()]);

      And that line threw a NegativeArraySizeException. The elements reference is an ArrayList, which should ALWAYS return a value of >= 0. So something seems very wrong.

      This has happened only once, and we have not been able to reproduce it. The bug was originally logged against eclipse, here: https://bugs.eclipse.org/bugs/show_bug.cgi?id=332707

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      Can't reproduce.

      EXPECTED VERSUS ACTUAL BEHAVIOR :
      EXPECTED -
      ArrayList should NEVER return a negative value from size()

      ERROR MESSAGES/STACK TRACES THAT OCCUR :
      java.lang.NegativeArraySizeException
       at org.eclipse.ui.internal.views.log.LogView.getElements(LogView.java:772)
       at org.eclipse.ui.internal.views.log.LogViewContentProvider.getElements(LogViewContentProvider.java:32)
       at org.eclipse.jface.viewers.StructuredViewer.getRawChildren(StructuredViewer.java:959)
       at org.eclipse.jface.viewers.ColumnViewer.getRawChildren(ColumnViewer.java:703)
       at org.eclipse.jface.viewers.AbstractTreeViewer.getRawChildren(AbstractTreeViewer.java:1330)
       at org.eclipse.jface.viewers.TreeViewer.getRawChildren(TreeViewer.java:390)
       at org.eclipse.jface.viewers.AbstractTreeViewer.getFilteredChildren(AbstractTreeViewer.java:636)
       at org.eclipse.jface.viewers.AbstractTreeViewer.getSortedChildren(AbstractTreeViewer.java:602)
       at org.eclipse.jface.viewers.AbstractTreeViewer.updateChildren(AbstractTreeViewer.java:2578)
       at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefreshStruct(AbstractTreeViewer.java:1863)
       at org.eclipse.jface.viewers.TreeViewer.internalRefreshStruct(TreeViewer.java:716)
       at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1838)
       at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1794)
       at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1780)
       at org.eclipse.jface.viewers.StructuredViewer$7.run(StructuredViewer.java:1457)
       at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1392)
       at org.eclipse.jface.viewers.TreeViewer.preservingSelection(TreeViewer.java:402)
       at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1353)
       at org.eclipse.jface.viewers.StructuredViewer.refresh(StructuredViewer.java:1455)
       at org.eclipse.jface.viewers.ColumnViewer.refresh(ColumnViewer.java:537)
       at org.eclipse.ui.dialogs.FilteredTree$NotifyingTreeViewer.refresh(FilteredTree.java:1205)
       at org.eclipse.jface.viewers.StructuredViewer.refresh(StructuredViewer.java:1414)
       at org.eclipse.ui.dialogs.FilteredTree$NotifyingTreeViewer.refresh(FilteredTree.java:1195)
       at org.eclipse.ui.internal.views.log.LogView$25.run(LogView.java:1060)
       at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
       at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134)
       ... 37 more


      REPRODUCIBILITY :
      This bug can be reproduced rarely.

            Unassigned Unassigned
            webbuggrp Webbug Group
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: