Project: Eclipse_Platform_UI
Bug 227868 [Progress] NPE in ProgressManagerUtil$1.compare(...)
Reported: 2008-04-18 19:29:18 | Status: verified fixed

!ENTRY org.eclipse.ui 4 0 2008-04-19 01:25:50.734 !MESSAGE Unhandled event loop exception !STACK 0 org.eclipse.swt.SWTException: Failed to execute runnable (java.lang.NullPointerException) at org.eclipse.swt.SWT.error(SWT.java:3773) at org.eclipse.swt.SWT.error(SWT.java:3691) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3756) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3381) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2351) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2315) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2181) at org.eclipse.ui.internal.Workbench$4.run(Workbench.java:477) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:288) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:472) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:112) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:193) 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:376) at Version: 3.4.0 Build id: I20080415-1646 While self-hosting, I noticed many entries like this being logged. I had no other visible symptoms in the IDE. org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:176) 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:549) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:504) at org.eclipse.equinox.launcher.Main.run(Main.java:1236) at org.eclipse.equinox.launcher.Main.main(Main.java:1212) Caused by: java.lang.NullPointerException at org.eclipse.ui.internal.progress.ProgressManagerUtil$1.compare(ProgressManagerUtil.java:107) at org.eclipse.jface.viewers.ViewerComparator$1.compare(ViewerComparator.java:187) at java.util.Arrays.mergeSort(Arrays.java:1270) at java.util.Arrays.sort(Arrays.java:1210) at org.eclipse.jface.viewers.ViewerComparator.sort(ViewerComparator.java:185) at org.eclipse.ui.internal.progress.DetailedProgressViewer.add(DetailedProgressViewer.java:162) at org.eclipse.ui.internal.progress.DetailedProgressViewer.internalRefresh(DetailedProgressViewer.java:382) at org.eclipse.jface.viewers.StructuredViewer.internalRefresh(StructuredViewer.java:1226) at org.eclipse.jface.viewers.StructuredViewer$8.run(StructuredViewer.java:1457) at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1365) at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1328) at org.eclipse.jface.viewers.StructuredViewer.refresh(StructuredViewer.java:1455) at org.eclipse.ui.internal.progress.ProgressViewerContentProvider.refresh(ProgressViewerContentProvider.java:151) at org.eclipse.ui.internal.progress.ProgressViewUpdater$1.runInUIThread(ProgressViewUpdater.java:274) at org.eclipse.ui.progress.UIJob$1.run(UIJob.java:94) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:132) ... 23 more

Files changed in fix:
bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/DetailedProgressViewer.java