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

Bug 154468

Summary: [Perspectives] NPE when using "Open Call Hierarchy"
Product: [Eclipse Project] Platform Reporter: Benjamin Muskalla <b.muskalla>
Component: UIAssignee: Paul Webster <pwebster>
Status: RESOLVED WORKSFORME QA Contact:
Severity: normal    
Priority: P5 CC: emoffatt
Version: 3.3Keywords: helpwanted
Target Milestone: 3.3   
Hardware: PC   
OS: Linux-GTK   
Whiteboard:

Description Benjamin Muskalla CLA 2006-08-20 09:44:16 EDT
I know the "Open Call Hierarchy" is a JDT thing, but it seems that this bug is based in Platform UI.

I'm very sorry, but I can't reproduce this anymore. Last time, the only thing i know is, that i've hit Ctrl+Alt+H to open the Call Hierarchy for a method. Then, eclipse crashes in this is in the logs:

!ENTRY org.eclipse.ui 4 4 2006-08-20 14:33:22.726
!MESSAGE "Open Call Hierarchy" did not complete normally.  Please see the log for more information.

!ENTRY org.eclipse.ui 4 0 2006-08-20 14:33:22.735
!MESSAGE java.lang.NullPointerException
!STACK 0
java.lang.NullPointerException
	at org.eclipse.ui.internal.PerspectiveHelper.derefPart(PerspectiveHelper.java:694)
	at org.eclipse.ui.internal.ViewSashContainer.derefPart(ViewSashContainer.java:267)
	at org.eclipse.ui.internal.PartSashContainer.stack(PartSashContainer.java:1211)
	at org.eclipse.ui.internal.PerspectiveHelper.addPart(PerspectiveHelper.java:295)
	at org.eclipse.ui.internal.Perspective.showView(Perspective.java:1685)
	at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:984)
	at org.eclipse.ui.internal.WorkbenchPage.access$13(WorkbenchPage.java:965)
	at org.eclipse.ui.internal.WorkbenchPage$13.run(WorkbenchPage.java:3485)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67)
	at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:3482)
	at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:3458)
	at org.eclipse.jdt.internal.ui.callhierarchy.CallHierarchyUI.openInViewPart(CallHierarchyUI.java:232)
	at org.eclipse.jdt.internal.ui.callhierarchy.CallHierarchyUI.open(CallHierarchyUI.java:226)
	at org.eclipse.jdt.internal.ui.callhierarchy.OpenCallHierarchyAction.run(OpenCallHierarchyAction.java:229)
	at org.eclipse.jdt.internal.ui.callhierarchy.OpenCallHierarchyAction.run(OpenCallHierarchyAction.java:153)
	at org.eclipse.jdt.ui.actions.SelectionDispatchAction.dispatchRun(SelectionDispatchAction.java:271)
	at org.eclipse.jdt.ui.actions.SelectionDispatchAction.run(SelectionDispatchAction.java:243)
	at org.eclipse.jface.action.Action.runWithEvent(Action.java:499)
	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:461)
	at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:424)
	at org.eclipse.ui.internal.handlers.HandlerService.executeCommand(HandlerService.java:160)
	at org.eclipse.ui.internal.keys.WorkbenchKeyboard.executeCommand(WorkbenchKeyboard.java:466)
	at org.eclipse.ui.internal.keys.WorkbenchKeyboard.press(WorkbenchKeyboard.java:799)
	at org.eclipse.ui.internal.keys.WorkbenchKeyboard.processKeyEvent(WorkbenchKeyboard.java:846)
	at org.eclipse.ui.internal.keys.WorkbenchKeyboard.filterKeySequenceBindings(WorkbenchKeyboard.java:564)
	at org.eclipse.ui.internal.keys.WorkbenchKeyboard.access$3(WorkbenchKeyboard.java:506)
	at org.eclipse.ui.internal.keys.WorkbenchKeyboard$KeyDownFilter.handleEvent(WorkbenchKeyboard.java:122)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
	at org.eclipse.swt.widgets.Display.filterEvent(Display.java:1368)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1084)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1109)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1094)
	at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1121)
	at org.eclipse.swt.widgets.Widget.gtk_key_press_event(Widget.java:655)
	at org.eclipse.swt.widgets.Control.gtk_key_press_event(Control.java:2101)
	at org.eclipse.swt.widgets.Composite.gtk_key_press_event(Composite.java:637)
	at org.eclipse.swt.widgets.Widget.windowProc(Widget.java:1464)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:3823)
	at org.eclipse.swt.internal.gtk.OS._gtk_main_do_event(Native Method)
	at org.eclipse.swt.internal.gtk.OS.gtk_main_do_event(OS.java:5435)
	at org.eclipse.swt.widgets.Display.eventProc(Display.java:1137)
	at org.eclipse.swt.internal.gtk.OS._g_main_context_iteration(Native Method)
	at org.eclipse.swt.internal.gtk.OS.g_main_context_iteration(OS.java:1464)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2865)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1914)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1878)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:419)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
	at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:95)
	at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:104)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:74)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:401)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177)
	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.core.launcher.Main.invokeFramework(Main.java:336)
	at org.eclipse.core.launcher.Main.basicRun(Main.java:280)
	at org.eclipse.core.launcher.Main.run(Main.java:977)
	at org.eclipse.core.launcher.Main.main(Main.java:952)

I'm using Eclipse 3.3.0
Build id: N20060812-0010

At the moment, Open Call Hierarchy works correctly - really don't know what I've done else last time :/
Comment 1 Paul Webster CLA 2006-08-22 11:56:42 EDT
Were you using any fast views?  Or the new MultiFVB stuff?

PW
Comment 2 Benjamin Muskalla CLA 2006-08-22 12:23:13 EDT
No, nothing. Checked out some code from eclipse cvs, browsed trough it and then that happend. The only thing before was that cvs had problem with deleting some resources (but i don't think this has anything to do with this issue). Also used "Open Call hierarchy" some times before and now after that crash...no problems..i don't use fast views in this workbench (and never used before in this installation).
Comment 3 Paul Webster CLA 2006-08-22 13:15:58 EDT
There was some work being done in HEAD around perspectives, fastviews, and trim about that time.

I'll leave this open for now, and if you could observe the behaviour on one of the latest I builds (like last week, or today's I20060822-1200 build).

Thanx,
PW
Comment 4 Eric Moffatt CLA 2006-08-30 14:53:18 EDT
I just tried this locally (with my latest changes) and the view shows up with no problems. I can't guarantee that it's not me though since it may be related to the state of the rest of the perspective...
Comment 5 Paul Webster CLA 2006-09-28 15:18:12 EDT
Is this still a problem in 3.3?

PW
Comment 6 Denis Roy CLA 2007-06-22 09:33:31 EDT
Changes requested on bug 193523
Comment 7 Paul Webster CLA 2007-06-22 15:10:56 EDT
Eric, did we fix these derefPart NPEs?
PW
Comment 8 Eric Moffatt CLA 2007-06-22 15:22:56 EDT
I wasn't able to repro this so I doubt that we changed anything. If this hasn't been seen in the wilds (i.e. has anybody else seen it?) then I'd mark it WORKSFORME barring a repro'able test scenario...

Comment 9 Paul Webster CLA 2007-06-22 21:24:59 EDT
There have been a number of changes in this area ... but if you can reproduce this, please reopen.

PW