Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 505996 - Can't apply patch: AFE
Summary: Can't apply patch: AFE
Status: VERIFIED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: Compare (show other bugs)
Version: 4.7   Edit
Hardware: PC Windows 7
: P3 blocker (vote)
Target Milestone: 4.7 M3   Edit
Assignee: Sergey Prigogin CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-10-14 10:54 EDT by Dani Megert CLA
Modified: 2017-02-07 09:55 EST (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Dani Megert CLA 2016-10-14 10:54:10 EDT
I can't apply a patch anymore due to an NPE:

org.eclipse.core.runtime.AssertionFailedException: assertion failed: 
	at org.eclipse.core.runtime.Assert.isTrue(Assert.java:110)
	at org.eclipse.core.runtime.Assert.isTrue(Assert.java:96)
	at org.eclipse.core.runtime.Adapters.adapt(Adapters.java:62)
	at org.eclipse.core.runtime.Adapters.adapt(Adapters.java:100)
	at org.eclipse.compare.internal.Utilities.isHunk(Utilities.java:769)
	at org.eclipse.compare.contentmergeviewer.ContentMergeViewer.internalRefresh(ContentMergeViewer.java:786)
	at org.eclipse.compare.contentmergeviewer.ContentMergeViewer.inputChanged(ContentMergeViewer.java:705)
	at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:286)
	at org.eclipse.jdt.internal.ui.compare.JavaMergeViewer.setInput(JavaMergeViewer.java:152)
	at org.eclipse.compare.CompareViewerSwitchingPane.setInput(CompareViewerSwitchingPane.java:270)
	at org.eclipse.compare.internal.CompareContentViewerSwitchingPane.setInput(CompareContentViewerSwitchingPane.java:192)
	at org.eclipse.compare.CompareEditorInput.internalSetContentPaneInput(CompareEditorInput.java:860)
	at org.eclipse.compare.CompareEditorInput.access$7(CompareEditorInput.java:858)
	at org.eclipse.compare.CompareEditorInput$10.run(CompareEditorInput.java:798)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.compare.CompareEditorInput.feed1(CompareEditorInput.java:784)
	at org.eclipse.compare.CompareEditorInput.access$2(CompareEditorInput.java:783)
	at org.eclipse.compare.CompareEditorInput$4.open(CompareEditorInput.java:665)
	at org.eclipse.compare.CompareViewerPane.open(CompareViewerPane.java:314)
	at org.eclipse.jface.viewers.StructuredViewer$2.run(StructuredViewer.java:851)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:50)
	at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:173)
	at org.eclipse.jface.viewers.StructuredViewer.fireOpen(StructuredViewer.java:848)
	at org.eclipse.compare.structuremergeviewer.DiffTreeViewer.internalSetSelection(DiffTreeViewer.java:663)
	at org.eclipse.compare.structuremergeviewer.DiffTreeViewer.internalNavigate(DiffTreeViewer.java:534)
	at org.eclipse.compare.structuremergeviewer.DiffTreeViewer.access$2(DiffTreeViewer.java:528)
	at org.eclipse.compare.structuremergeviewer.DiffTreeViewer$1.selectChange(DiffTreeViewer.java:212)
	at org.eclipse.compare.internal.CompareEditorInputNavigator.openElement(CompareEditorInputNavigator.java:99)
	at org.eclipse.compare.internal.CompareEditorInputNavigator.selectChange(CompareEditorInputNavigator.java:66)
	at org.eclipse.compare.internal.patch.PreviewPatchPage2.setVisible(PreviewPatchPage2.java:361)
	at org.eclipse.jface.wizard.WizardDialog.updateForPage(WizardDialog.java:1215)
	at org.eclipse.jface.wizard.WizardDialog.lambda$2(WizardDialog.java:1185)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.jface.wizard.WizardDialog.showPage(WizardDialog.java:1185)
	at org.eclipse.jface.wizard.WizardDialog.nextPressed(WizardDialog.java:876)
	at org.eclipse.jface.wizard.WizardDialog.buttonPressed(WizardDialog.java:419)
	at org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Dialog.java:622)
	at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:249)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:86)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4431)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1079)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4241)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3820)
	at org.eclipse.jface.window.Window.runEventLoop(Window.java:818)
	at org.eclipse.jface.window.Window.open(Window.java:794)
	at org.eclipse.compare.patch.ApplyPatchOperation.openWizard(ApplyPatchOperation.java:154)
	at org.eclipse.compare.patch.ApplyPatchOperation.run(ApplyPatchOperation.java:199)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.egit.ui.internal.actions.ApplyPatchActionHandler.execute(ApplyPatchActionHandler.java:54)
	at org.eclipse.egit.ui.internal.actions.RepositoryAction.run(RepositoryAction.java:79)
	at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:247)
	at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:565)
	at org.eclipse.jface.action.ActionContributionItem.lambda$4(ActionContributionItem.java:397)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:86)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4431)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1079)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4241)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3820)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1133)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1022)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:153)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:698)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:610)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:148)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:138)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:388)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:497)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:673)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:610)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1519)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1492)
Comment 1 Dani Megert CLA 2016-10-14 11:01:11 EDT
Caused by https://git.eclipse.org/r/#/c/82337/ with the change in

org.eclipse.compare.internal.Utilities.isHunk(Utilities.java:769)

Please fix asap. Not being able to apply a batch is a blocker. Thanks.

NOTE: I verified that it works with 4.7 M2.


Test Case:
1. Start with latest N-build and new workspace
2. Clone eclipse.pde.ui
3. Import org.eclipse.pde.api.tools
4. Apply patch https://bugs.eclipse.org/bugs/attachment.cgi?id=264798
Comment 2 Sergey Prigogin CLA 2016-10-14 14:56:11 EDT
(In reply to Dani Megert from comment #1)

https://git.eclipse.org/r/#/c/82337/ exposed a 10-year old bug introduced by
http://git.eclipse.org/c/platform/eclipse.platform.team.git/commit/?id=b8c5043df8e97f8b7633bf8f7d66416cd94bc287
Comment 3 Eclipse Genie CLA 2016-10-14 14:58:01 EDT
New Gerrit change created: https://git.eclipse.org/r/83264
Comment 4 Eclipse Genie CLA 2016-10-14 15:20:54 EDT
New Gerrit change created: https://git.eclipse.org/r/83265
Comment 6 Dani Megert CLA 2016-10-15 03:36:55 EDT
(In reply to Eclipse Genie from comment #5)
> Gerrit change https://git.eclipse.org/r/83264 was merged to [master].
> Commit:
> http://git.eclipse.org/c/platform/eclipse.platform.team.git/commit/?id=3712ffe070c523ab17649977fcf8787f57132c57
> 

Verified in N20161014-2000.

Thanks for the quick fix!