-
Bug
-
Resolution: Cannot Reproduce
-
P4
-
None
-
6
-
x86
-
windows_7
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.
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.