Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 402986 - NPE in Workbench on Ctrl+H
Summary: NPE in Workbench on Ctrl+H
Status: CLOSED DUPLICATE of bug 403040
Alias: None
Product: Platform
Classification: Eclipse Project
Component: UI (show other bugs)
Version: 4.3   Edit
Hardware: Macintosh Mac OS X
: P3 major (vote)
Target Milestone: ---   Edit
Assignee: Platform-UI-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
: 403532 (view as bug list)
Depends on:
Blocks:
 
Reported: 2013-03-12 01:32 EDT by Jason CLA
Modified: 2013-03-15 19:51 EDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jason CLA 2013-03-12 01:32:39 EDT
org.eclipse.e4.core.di.InjectionException: java.lang.NullPointerException
	at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:63)
	at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:231)
	at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:212)
	at org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:131)
	at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:171)
	at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.executeCommand(KeyBindingDispatcher.java:277)
	at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.press(KeyBindingDispatcher.java:496)
	at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.processKeyEvent(KeyBindingDispatcher.java:547)
	at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.filterKeySequenceBindings(KeyBindingDispatcher.java:368)
	at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.access$0(KeyBindingDispatcher.java:314)
	at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher$KeyDownFilter.handleEvent(KeyBindingDispatcher.java:83)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Display.filterEvent(Display.java:1074)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4135)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1458)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1481)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1466)
	at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1495)
	at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1491)
	at org.eclipse.swt.widgets.Canvas.sendKeyEvent(Canvas.java:497)
	at org.eclipse.swt.widgets.Control.doCommandBySelector(Control.java:1060)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:5587)
	at org.eclipse.swt.internal.cocoa.OS.objc_msgSend(Native Method)
	at org.eclipse.swt.internal.cocoa.NSResponder.interpretKeyEvents(NSResponder.java:68)
	at org.eclipse.swt.widgets.Composite.keyDown(Composite.java:587)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:5497)
	at org.eclipse.swt.internal.cocoa.OS.objc_msgSendSuper(Native Method)
	at org.eclipse.swt.widgets.Widget.callSuper(Widget.java:221)
	at org.eclipse.swt.widgets.Widget.windowSendEvent(Widget.java:2102)
	at org.eclipse.swt.widgets.Shell.windowSendEvent(Shell.java:2299)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:5559)
	at org.eclipse.swt.internal.cocoa.OS.objc_msgSendSuper(Native Method)
	at org.eclipse.swt.widgets.Display.applicationSendEvent(Display.java:5004)
	at org.eclipse.swt.widgets.Display.applicationProc(Display.java:5153)
	at org.eclipse.swt.internal.cocoa.OS.objc_msgSend(Native Method)
	at org.eclipse.swt.internal.cocoa.NSApplication.sendEvent(NSApplication.java:128)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3618)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1053)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:942)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:86)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:588)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:543)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	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:353)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
	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:629)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1438)
Caused by: java.lang.NullPointerException
	at org.eclipse.search.internal.ui.SearchDialog.isOldSearchView(SearchDialog.java:272)
	at org.eclipse.search.internal.ui.SearchDialog.getActiveEditor(SearchDialog.java:257)
	at org.eclipse.search.internal.ui.SearchDialog.<init>(SearchDialog.java:153)
	at org.eclipse.search.internal.ui.OpenSearchDialogAction.run(OpenSearchDialogAction.java:53)
	at org.eclipse.search.internal.ui.OpenSearchDialogAction.run(OpenSearchDialogAction.java:45)
	at org.eclipse.ui.internal.handlers.ActionDelegateHandlerProxy.execute(ActionDelegateHandlerProxy.java:295)
	at org.eclipse.ui.internal.handlers.E4HandlerProxy.execute(E4HandlerProxy.java:76)
	at sun.reflect.GeneratedMethodAccessor21.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:56)
Comment 1 Dani Megert CLA 2013-03-12 06:08:44 EDT
Which version? Can you provide steps? Did this happen before or after the NPE you filed in bug 402987? Can you attach the complete .log please.

We got a similar bug 402040 before, but also no "luck" to reproduce the problem.
Comment 2 Dani Megert CLA 2013-03-12 10:06:35 EDT

*** This bug has been marked as a duplicate of bug 403040 ***
Comment 3 Jason CLA 2013-03-12 12:55:04 EDT
Yeah sorry.. this was posted in a moment of frustration after having been battered about the head by eclipse all evening.

I'm pretty sure it has something to do with running CDT inside the standard Java environment.  When I installed CDT my Ctrl+H turned into a tiny little yellow menu that would appear in the bottom right corner, with only one option in it "Search".  This is incredibly annoying because I often just whack Ctrl+H then start typing, but this little menu meant an extra keystroke.  Frustrated with the fact that I was being given a menu with only one option I decided to check the key binding, thinking there may be some sort of conflict.  There was only one action bound to Ctrl+H which was search, but then I noticed the "restore" button so I clicked it.  I noticed that there was previously a value in the "User" column of the key binding that disappeared when I did this.  After this the search box worked without the little menu!.. brilliant.. then, disaster.  NPE's galore every time I hit Ctrl+H and no search box.  I'd gone from a mildly frustrating experience, to no experience at all.

My suspicion is that it has something to do with switching between C++ code and Java code in the IDE.  I know for example that Ctrl+Shift+T (Open Type) behaves differently depending on whether I'm currently viewing a C++ source file or a Java source file (which is also utterly ridiculous and incredibly frustrating) so perhaps the Search dialog is trying to be different because I had switched to a c++ file?  (I'm not certain I did, but it's possible).

Not sure why this issue was CLOSED before I had a chance to respond to your question, particularly because the duplicate does not seem to have the same, or even similar symptoms... but actually whatever.  I'm switching to Intellij anyway.. I just can't take the constant torrent of bugs, crashes, errors and hangs anymore.
Comment 4 Dani Megert CLA 2013-03-12 12:59:34 EDT
(In reply to comment #3)
 
> Not sure why this issue was CLOSED before I had a chance to respond to your
> question, particularly because the duplicate does not seem to have the same,
> or even similar symptoms... but actually whatever.

Because it is the same bug and stack trace:

Caused by: java.lang.NullPointerException
	at org.eclipse.search.internal.ui.SearchDialog.isOldSearchView(SearchDialog.java:272)
Comment 5 Jason CLA 2013-03-12 13:02:45 EDT
OK.. I assumed that because you had asked about how it was reproduced then there my be a difference in the circumstances that lead to the error, and these differences may be relevant.
Comment 6 Paul Webster CLA 2013-03-15 19:51:53 EDT
*** Bug 403532 has been marked as a duplicate of this bug. ***