Bug 267773 - [open type] Use of ? results in error
Summary: [open type] Use of ? results in error
Status: VERIFIED FIXED
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Core (show other bugs)
Version: 3.5   Edit
Hardware: PC Windows XP
: P3 critical (vote)
Target Milestone: 3.5 M6   Edit
Assignee: Frederic Fusier CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-03-10 03:10 EDT by Raksha Vasisht CLA
Modified: 2009-03-11 04:43 EDT (History)
2 users (show)

See Also:


Attachments
Screen shot of error dialog (37.35 KB, image/png)
2009-03-10 03:10 EDT, Raksha Vasisht CLA
no flags Details
Proposed patch (2.00 KB, patch)
2009-03-10 06:41 EDT, Frederic Fusier CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Raksha Vasisht CLA 2009-03-10 03:10:02 EDT
Created attachment 128144 [details]
Screen shot of error dialog

Build ID:  I20090309-1800

Steps To Reproduce:
1.open type and type anything followed by a '?' eg : Abstract? or just M?
2.It throws an error dialog with no message or reason
3.=> Undesired behaviour. 


More information:
Comment 1 Dani Megert CLA 2009-03-10 04:11:15 EDT
Can reproduce using I20090310-0100.

==>

!ENTRY org.eclipse.jface 4 2 2009-03-10 09:09:45.840
!MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.jface".
!STACK 0
java.lang.ArrayIndexOutOfBoundsException: 2
	at org.eclipse.jdt.internal.core.search.StringOperation.getPatternMatchingRegions(StringOperation.java:386)
	at org.eclipse.jdt.core.search.SearchPattern.getMatchingRegions(SearchPattern.java:831)
	at org.eclipse.jdt.internal.ui.dialogs.FilteredTypesSelectionDialog$TypeItemLabelProvider.getStyledText(FilteredTypesSelectionDialog.java:861)
	at org.eclipse.ui.dialogs.FilteredItemsSelectionDialog$ItemsListLabelProvider.getStyledText(FilteredItemsSelectionDialog.java:1671)
	at org.eclipse.ui.dialogs.FilteredItemsSelectionDialog$ItemsListLabelProvider.update(FilteredItemsSelectionDialog.java:1688)
	at org.eclipse.jface.viewers.ViewerColumn.refresh(ViewerColumn.java:145)
	at org.eclipse.jface.viewers.AbstractTableViewer.doUpdateItem(AbstractTableViewer.java:399)
	at org.eclipse.jface.viewers.StructuredViewer$UpdateItemSafeRunnable.run(StructuredViewer.java:475)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
	at org.eclipse.core.runtime.Platform.run(Platform.java:888)
	at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:48)
	at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
	at org.eclipse.jface.viewers.StructuredViewer.refreshItem(StructuredViewer.java:1490)
	at org.eclipse.jface.viewers.AbstractTableViewer.replace(AbstractTableViewer.java:1059)
	at org.eclipse.ui.dialogs.FilteredItemsSelectionDialog$ContentProvider.updateElement(FilteredItemsSelectionDialog.java:2893)
	at org.eclipse.jface.viewers.AbstractTableViewer.getVirtualSelection(AbstractTableViewer.java:510)
	at org.eclipse.jface.viewers.AbstractTableViewer.getSelectionFromWidget(AbstractTableViewer.java:481)
	at org.eclipse.jface.viewers.StructuredViewer.getSelection(StructuredViewer.java:981)
	at org.eclipse.jface.viewers.StructuredViewer.handlePostSelect(StructuredViewer.java:1161)
	at org.eclipse.jface.viewers.StructuredViewer$5.widgetSelected(StructuredViewer.java:1187)
	at org.eclipse.jface.util.OpenStrategy.firePostSelectionEvent(OpenStrategy.java:251)
	at org.eclipse.jface.util.OpenStrategy.access$5(OpenStrategy.java:245)
	at org.eclipse.jface.util.OpenStrategy$3.run(OpenStrategy.java:419)
	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:133)
	at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3855)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3476)
	at org.eclipse.jface.window.Window.runEventLoop(Window.java:825)
	at org.eclipse.jface.window.Window.open(Window.java:801)
	at org.eclipse.jdt.internal.ui.dialogs.FilteredTypesSelectionDialog.open(FilteredTypesSelectionDialog.java:499)
	at org.eclipse.jdt.internal.ui.actions.OpenTypeAction.runWithEvent(OpenTypeAction.java:71)
	at org.eclipse.jdt.internal.ui.actions.OpenTypeAction.runWithEvent(OpenTypeAction.java:132)
	at org.eclipse.ui.internal.handlers.ActionDelegateHandlerProxy.execute(ActionDelegateHandlerProxy.java:281)
	at org.eclipse.core.commands.Command.executeWithChecks(Command.java:476)
	at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:508)
	at org.eclipse.ui.internal.handlers.HandlerService.executeCommand(HandlerService.java:169)
	at org.eclipse.ui.internal.keys.WorkbenchKeyboard.executeCommand(WorkbenchKeyboard.java:471)
	at org.eclipse.ui.internal.keys.WorkbenchKeyboard.press(WorkbenchKeyboard.java:823)
	at org.eclipse.ui.internal.keys.WorkbenchKeyboard.processKeyEvent(WorkbenchKeyboard.java:879)
	at org.eclipse.ui.internal.keys.WorkbenchKeyboard.filterKeySequenceBindings(WorkbenchKeyboard.java:570)
	at org.eclipse.ui.internal.keys.WorkbenchKeyboard.access$3(WorkbenchKeyboard.java:511)
	at org.eclipse.ui.internal.keys.WorkbenchKeyboard$KeyDownFilter.handleEvent(WorkbenchKeyboard.java:126)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Display.filterEvent(Display.java:1191)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1002)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1027)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1012)
	at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1040)
	at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1036)
	at org.eclipse.swt.widgets.Widget.wmChar(Widget.java:1358)
	at org.eclipse.swt.widgets.Control.WM_CHAR(Control.java:4024)
	at org.eclipse.swt.widgets.Tree.WM_CHAR(Tree.java:5825)
	at org.eclipse.swt.widgets.Control.windowProc(Control.java:3917)
	at org.eclipse.swt.widgets.Tree.windowProc(Tree.java:5821)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:4589)
	at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
	at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2394)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3471)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2393)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2357)
	at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2209)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:499)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:492)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:556)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:511)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1284)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1260)
	at org.eclipse.core.launcher.Main.main(Main.java:30)
Comment 2 Dani Megert CLA 2009-03-10 05:04:53 EDT
Frédéric, can you check whether it's JDT Core or whether we call the API with wrong arguments?
Comment 3 Frederic Fusier CLA 2009-03-10 06:41:27 EDT
Created attachment 128168 [details]
Proposed patch

Tests 318-323 added in MatchingRegionsTest, but there's a problem while creating the patch and these additional tests were not included in the patch file (see bug 267817)...
Comment 4 Frederic Fusier CLA 2009-03-10 08:17:18 EDT
Released for 3.5M6 in HEAD stream.
Comment 5 Dani Megert CLA 2009-03-11 04:43:10 EDT
Verified in I20090311-0100.