Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 185487

Summary: Internal error in DLTK UI when Go to declaration for method is called
Product: [Technology] DLTK Reporter: Michael Klishin <michael.s.klishin>
Component: RubyAssignee: Mikhail Kalugin <mikhail.kalugin>
Status: RESOLVED FIXED QA Contact:
Severity: critical    
Priority: P1 CC: andrey
Version: 0.95   
Target Milestone: ---   
Hardware: Macintosh   
OS: Mac OS X - Carbon (unsup.)   
Whiteboard:
Attachments:
Description Flags
Project to reproduce reported bug none

Description Michael Klishin CLA 2007-05-03 23:21:35 EDT
Build ID: I20070323

Steps To Reproduce:
1. Extract directory attached (RSpec trunk).
2. Open up behaviour.rb file.
3. Move cursor to line 177 (example_finished method) and hit F3.

Exception is raised and dialog saying check up log view is shown.

More information:
Log view says it was internal error in DLTK UI.

Stack trace:
java.lang.reflect.InvocationTargetException
at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:350)
at org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:495)
at org.eclipse.ui.internal.progress.ProgressMonitorJobsDialog.run(ProgressMonitorJobsDialog.java:265)
at org.eclipse.ui.internal.progress.ProgressManager$3.run(ProgressManager.java:890)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67)
at org.eclipse.ui.internal.progress.ProgressManager.busyCursorWhile(ProgressManager.java:925)
at org.eclipse.ui.internal.progress.ProgressManager.busyCursorWhile(ProgressManager.java:900)
at org.eclipse.dltk.internal.ui.actions.SelectionConverter.performForkedCodeResolve(SelectionConverter.java:178)
at org.eclipse.dltk.internal.ui.actions.SelectionConverter.codeResolveForked(SelectionConverter.java:130)
at org.eclipse.dltk.ui.actions.OpenAction.run(OpenAction.java:130)
at org.eclipse.dltk.ui.actions.SelectionDispatchAction.dispatchRun(SelectionDispatchAction.java:264)
at org.eclipse.dltk.ui.actions.SelectionDispatchAction.run(SelectionDispatchAction.java:236)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:498)
at org.eclipse.ui.commands.ActionHandler.execute(ActionHandler.java:185)
at org.eclipse.ui.internal.handlers.LegacyHandlerWrapper.execute(LegacyHandlerWrapper.java:109)
at org.eclipse.core.commands.Command.executeWithChecks(Command.java:471)
at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:424)
at org.eclipse.ui.internal.handlers.HandlerService.executeCommand(HandlerService.java:164)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.executeCommand(WorkbenchKeyboard.java:467)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.press(WorkbenchKeyboard.java:791)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.processKeyEvent(WorkbenchKeyboard.java:838)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.filterKeySequenceBindings(WorkbenchKeyboard.java:565)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard.access$3(WorkbenchKeyboard.java:507)
at org.eclipse.ui.internal.keys.WorkbenchKeyboard$KeyDownFilter.handleEvent(WorkbenchKeyboard.java:124)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
at org.eclipse.swt.widgets.Display.filterEvent(Display.java:1094)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1462)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1487)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1472)
at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1524)
at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1519)
at org.eclipse.swt.widgets.Control.kEventUnicodeKeyPressed(Control.java:1970)
at org.eclipse.swt.widgets.Composite.kEventUnicodeKeyPressed(Composite.java:580)
at org.eclipse.swt.widgets.Control.kEventTextInputUnicodeForKeyEvent(Control.java:1951)
at org.eclipse.swt.widgets.Widget.textInputProc(Widget.java:1893)
at org.eclipse.swt.widgets.Display.textInputProc(Display.java:3773)
at org.eclipse.swt.internal.carbon.OS.SendEventToEventTarget(Native Method)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2917)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2337)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2301)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2176)
at org.eclipse.ui.internal.Workbench$4.run(Workbench.java:463)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:289)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:458)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:101)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:146)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:106)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:76)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:356)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:171)
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:585)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:476)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:416)
at org.eclipse.equinox.launcher.Main.run(Main.java:1141)
Caused by: java.lang.NullPointerException
at org.eclipse.dltk.ruby.typeinference.evaluators.VariableReferenceEvaluator.subGoalDone(VariableReferenceEvaluator.java:203)
at org.eclipse.dltk.ti.GoalEngine.notifyEvaluator(GoalEngine.java:87)
at org.eclipse.dltk.ti.GoalEngine.evaluateGoal(GoalEngine.java:129)
at org.eclipse.dltk.ti.DefaultTypeInferencer.evaluateType(DefaultTypeInferencer.java:123)
at org.eclipse.dltk.ruby.typeinference.RubyTypeInferencer.evaluateType(RubyTypeInferencer.java:47)
at org.eclipse.dltk.ti.DLTKTypeInferenceEngine.evaluateType(DLTKTypeInferenceEngine.java:57)
at org.eclipse.dltk.ruby.internal.core.codeassist.RubySelectionEngine.selectOnMethod(RubySelectionEngine.java:378)
at org.eclipse.dltk.ruby.internal.core.codeassist.RubySelectionEngine.select(RubySelectionEngine.java:166)
at org.eclipse.dltk.internal.core.Openable.codeSelect(Openable.java:553)
at org.eclipse.dltk.internal.core.SourceModule.codeSelect(SourceModule.java:697)
at org.eclipse.dltk.internal.core.SourceModule.codeSelect(SourceModule.java:693)
at org.eclipse.dltk.internal.ui.actions.SelectionConverter.codeResolve(SelectionConverter.java:190)
at org.eclipse.dltk.internal.ui.actions.SelectionConverter$1$CodeResolveRunnable.run(SelectionConverter.java:171)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:113)
Root exception:
java.lang.NullPointerException
at org.eclipse.dltk.ruby.typeinference.evaluators.VariableReferenceEvaluator.subGoalDone(VariableReferenceEvaluator.java:203)
at org.eclipse.dltk.ti.GoalEngine.notifyEvaluator(GoalEngine.java:87)
at org.eclipse.dltk.ti.GoalEngine.evaluateGoal(GoalEngine.java:129)
at org.eclipse.dltk.ti.DefaultTypeInferencer.evaluateType(DefaultTypeInferencer.java:123)
at org.eclipse.dltk.ruby.typeinference.RubyTypeInferencer.evaluateType(RubyTypeInferencer.java:47)
at org.eclipse.dltk.ti.DLTKTypeInferenceEngine.evaluateType(DLTKTypeInferenceEngine.java:57)
at org.eclipse.dltk.ruby.internal.core.codeassist.RubySelectionEngine.selectOnMethod(RubySelectionEngine.java:378)
at org.eclipse.dltk.ruby.internal.core.codeassist.RubySelectionEngine.select(RubySelectionEngine.java:166)
at org.eclipse.dltk.internal.core.Openable.codeSelect(Openable.java:553)
at org.eclipse.dltk.internal.core.SourceModule.codeSelect(SourceModule.java:697)
at org.eclipse.dltk.internal.core.SourceModule.codeSelect(SourceModule.java:693)
at org.eclipse.dltk.internal.ui.actions.SelectionConverter.codeResolve(SelectionConverter.java:190)
at org.eclipse.dltk.internal.ui.actions.SelectionConverter$1$CodeResolveRunnable.run(SelectionConverter.java:171)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:113)


Session data:
eclipse.buildId=I20070323-1616
java.version=1.5.0_07
java.vendor=Apple Computer, Inc.
BootLoader constants: OS=macosx, ARCH=x86, WS=carbon, NL=en_US
Framework arguments:  -startup /Users/antares/Installed/eclipse33m6/Eclipse.app/Contents/MacOS/../../../plugins/org.eclipse.equinox.launcher_1.0.0.v20070319.jar -keyring /Users/antares/.eclipse_keyring -showlocation
Command-line arguments:  -os macosx -ws carbon -arch x86 -startup /Users/antares/Installed/eclipse33m6/Eclipse.app/Contents/MacOS/../../../plugins/org.eclipse.equinox.launcher_1.0.0.v20070319.jar -keyring /Users/antares/.eclipse_keyring -consoleLog -showlocation
Comment 1 Michael Klishin CLA 2007-05-03 23:25:36 EDT
Created attachment 65883 [details]
Project to reproduce reported bug
Comment 2 Michael Klishin CLA 2007-05-03 23:37:21 EDT
This behaviour can be me throughout the same file on line 110 and any other local variable method call.
Comment 3 Michael Klishin CLA 2007-05-03 23:41:39 EDT
Go to declaration for class or module works fine just after exception
Comment 4 Andrei Sobolev CLA 2007-05-07 06:00:59 EDT
Fixed.
Comment 5 Eclipse Webmaster CLA 2007-07-29 09:22:37 EDT
Changing OS from Mac OS to Mac OS X as per bug 185991
Comment 6 Andrey Platov CLA 2008-05-26 02:49:49 EDT
bulk change: fixed in 0.95