| Summary: | NPE in EGit history view | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [Technology] EGit | Reporter: | DJ Houghton <dj.houghton> | ||||
| Component: | UI | Assignee: | Project Inbox <egit.ui-inbox> | ||||
| Status: | VERIFIED FIXED | QA Contact: | |||||
| Severity: | major | ||||||
| Priority: | P3 | CC: | dariusz.luksza, emoffatt, jamesblackburn+eclipse, john.arthorne, M8R-sgiphk, matthias.sohn, Olivier_Thomann, pwebster, remy.suen, stephane.begaudeau | ||||
| Version: | 1.1 | ||||||
| Target Milestone: | --- | ||||||
| Hardware: | All | ||||||
| OS: | All | ||||||
| Whiteboard: | |||||||
| Bug Depends on: | |||||||
| Bug Blocks: | 331240 | ||||||
| Attachments: |
|
||||||
|
Description
DJ Houghton
Fixed with commit 2107d1c39d947aa9edcfb82add24a1f6621a596e EGit 0.12.1 I had before, which has this bug... fix was not yet available with Help->Check for Updates I had to add bleeding edge nightly builds repo. to pull latest: http://download.eclipse.org/egit/updates-nightly updated to this Eclipse EGit (Incubation) 1.0.0.201105291713 org.eclipse.egit.feature.group though it took well over 10 minutes - slow speed ?! bad eclipse.org very bad ;) Well, looks like it's not fixed there with: Eclipse EGit (Incubation) 1.0.0.201105291713 org.eclipse.egit.feature.group Eclipse EGit & Eclipse JGit (Incubation) 1.0.0.201105281926 org.eclipse.jgit.feature.group Eclipse JGit let's try this one too(thanks Dariusz): https://hudson.eclipse.org/hudson/job/egit/1396/artifact/org.eclipse.egit-updatesite/target/site/ will let you know in next comment: no updates, probably because I already updated to latest from nightly repo? Anyways, reproduce: 1. start eclipse and close any History views if any opened 2. left click on project(or any of it's resources) that is opened and has git 3. right click on project(or any of its resources) and go Team->Show In History Internal Error java.lang.NullPointerException at org.eclipse.egit.ui.internal.history.GitHistoryPage.setWarningText(GitHistoryPage.java:1329) at org.eclipse.egit.ui.internal.history.GitHistoryPage.setInput(GitHistoryPage.java:937) at org.eclipse.team.internal.ui.history.GenericHistoryView.showHistoryPageFor(GenericHistoryView.java:738) at org.eclipse.team.internal.ui.history.GenericHistoryView.showHistoryFor(GenericHistoryView.java:691) at org.eclipse.team.internal.ui.history.GenericHistoryView.showHistoryFor(GenericHistoryView.java:925) at org.eclipse.egit.ui.internal.actions.ShowHistoryActionHandler.execute(ShowHistoryActionHandler.java:34) at org.eclipse.egit.ui.internal.actions.RepositoryAction.run(RepositoryAction.java:86) at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:251) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584) at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501) at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:411) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4163) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3752) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:944) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:860) at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:87) at org.eclipse.ui.internal.Workbench$3.run(Workbench.java:542) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:522) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123) 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:344) 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:622) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577) at org.eclipse.equinox.launcher.Main.run(Main.java:1410) at org.eclipse.equinox.launcher.Main.main(Main.java:1386) eclipse.buildId=I20110528-2200 java.version=1.6.0_25 java.vendor=Sun Microsystems Inc. BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US Command-line arguments: -os win32 -ws win32 -arch x86_64 also, to workaround, click on project again, (in package explorer), now history is filled and no NPE occurs there is also this error happening around but looks related and same(?): Error setting focus to : org.eclipse.e4.ui.model.application.ui.basic.impl.PartImpl History java.lang.NullPointerException at org.eclipse.egit.ui.internal.history.GitHistoryPage.setWarningText(GitHistoryPage.java:1329) at org.eclipse.egit.ui.internal.history.GitHistoryPage.setInput(GitHistoryPage.java:937) at org.eclipse.team.internal.ui.history.GenericHistoryView.showHistoryPageFor(GenericHistoryView.java:738) at org.eclipse.team.internal.ui.history.GenericHistoryView.setFocus(GenericHistoryView.java:602) at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.delegateSetFocus(CompatibilityPart.java:154) at sun.reflect.GeneratedMethodAccessor16.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) at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:226) at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:232) at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:203) at org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:101) at org.eclipse.e4.ui.workbench.renderers.swt.ContributedPartRenderer$2.setFocus(ContributedPartRenderer.java:101) at org.eclipse.swt.widgets.Composite.setFocus(Composite.java:1038) at org.eclipse.e4.ui.workbench.renderers.swt.StackRenderer$5.mouseUp(StackRenderer.java:603) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:219) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4163) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3752) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:944) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:860) at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:87) at org.eclipse.ui.internal.Workbench$3.run(Workbench.java:542) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:522) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123) 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:344) 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:622) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577) at org.eclipse.equinox.launcher.Main.run(Main.java:1410) at org.eclipse.equinox.launcher.Main.main(Main.java:1386) eclipse.buildId=I20110528-2200 java.version=1.6.0_25 java.vendor=Sun Microsystems Inc. BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US Command-line arguments: -os win32 -ws win32 -arch x86_64 --- btw, all on: Eclipse SDK Version: 4.1.0 Build id: I20110528-2200 for historical reasons (as if I actually would matter) in EGit 0.12.1 this was the error (notice different line numbers) which is probably the same as the one in first post ( Comment 1 or Description ) !ENTRY org.eclipse.e4.ui.workbench 4 0 2011-05-30 02:29:11.273 !MESSAGE Internal Error !STACK 0 java.lang.NullPointerException at org.eclipse.egit.ui.internal.history.GitHistoryPage.setWarningText(GitHistoryPage.java:1291) at org.eclipse.egit.ui.internal.history.GitHistoryPage.setInput(GitHistoryPage.java:901) at org.eclipse.team.internal.ui.history.GenericHistoryView.showHistoryPageFor(GenericHistoryView.java:738) at org.eclipse.team.internal.ui.history.GenericHistoryView.showHistoryFor(GenericHistoryView.java:691) at org.eclipse.team.internal.ui.history.GenericHistoryView.showHistoryFor(GenericHistoryView.java:925) at org.eclipse.egit.ui.internal.actions.ShowHistoryActionHandler.execute(ShowHistoryActionHandler.java:34) at org.eclipse.egit.ui.internal.actions.RepositoryAction.run(RepositoryAction.java:86) at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:251) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584) at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501) at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:411) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4163) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3752) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:944) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:860) at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:87) at org.eclipse.ui.internal.Workbench$3.run(Workbench.java:542) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:522) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123) 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:344) 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:622) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577) at org.eclipse.equinox.launcher.Main.run(Main.java:1410) at org.eclipse.equinox.launcher.Main.main(Main.java:1386) btw, this bug does not exist in: Eclipse SDK Version: 3.7.0 Build id: I20110519-1138 using the same up to date EGit (not the 0.12.1 one) maybe please re-open or fix? This still seems to be an issue using egit on e4. *** Bug 347700 has been marked as a duplicate of this bug. *** *** Bug 349084 has been marked as a duplicate of this bug. *** *** Bug 350440 has been marked as a duplicate of this bug. *** *** Bug 350471 has been marked as a duplicate of this bug. *** Still occurs in the latest 1.1 on e4.1 Like James, I too am using the latest 4.x build. I get the problem when I open the Team Synchronize perspective. Build id: I20110620-1631 Eclipse EGit: 1.1.0.201106282013 I got it as well using EGit on 4.1 official build. eclipse.buildId=I20110620-1631 java.version=1.6.0_24 java.vendor=Sun Microsystems Inc. BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=fr_CA Command-line arguments: -os win32 -ws win32 -arch x86_64 -console The control does not have a layout data set on it so the code NPEs. (In reply to comment #16) > The control does not have a layout data set on it so the code NPEs. For whatever reasons, the layout() call in 3.x inadvertently sets a layout data to the control in question but the same call in 4.x doesn't. (In reply to comment #17) > For whatever reasons, the layout() call in 3.x inadvertently sets a layout data > to the control in question but the same call in 4.x doesn't. We're using deferred layouts in 4.x so the layout() calls gets...y'know, deferred. Created attachment 199180 [details]
Patch
I'm having problems pushing to Gerrit, please use this patch.
(In reply to comment #19) > I'm having problems pushing to Gerrit, please use this patch. Actually, looks like I can push to Gerrit from EGit (but not the command line). The change set has been pushed to Gerrit. http://egit.eclipse.org/r/#change,3831 merged as 6a490114a262009baeae8d1067f3952c7af14646 I guess you pushed via http and your native git version is too old to have smart http support. Gerrit doesn't support dumb http protocol. Try upgrading your native git to current version. Verified with EGit 1.1.0.201107070512 on Windows XP. Thanks, Matthias. (In reply to comment #21) > I guess you pushed via http and your native git version is too old to have > smart http support. Gerrit doesn't support dumb http protocol. Try upgrading > your native git to current version. I think it's some strange permissions problem with my ssh folder. Well, it doesn't really bother me if I can push from EGit. *shrugs* *** Bug 357606 has been marked as a duplicate of this bug. *** |