Project: Eclipse_Platform_UI
Bug 183607 [ErrorHandling] NPE from status handler causes a Team/CVS test failure
Reported: 2007-04-23 09:12:33 | Status: verified fixed

The team failure in the last few nightly builds looks to be an NPE from the StatusNotificationManager. Here's the stack trace: Failed to execute runnable (java.lang.NullPointerException) org.eclipse.swt.SWTException: Failed to execute runnable (java.lang.NullPointerException) at org.eclipse.swt.SWT.error(SWT.java:3542) at org.eclipse.swt.SWT.error(SWT.java:3465) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:126) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3264) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2951) at org.eclipse.team.tests.ccvs.ui.ModelParticipantSyncInfoSource.waitUntilFamilyDone(ModelParticipantSyncInfoSource.java:190) at org.eclipse.team.tests.ccvs.ui.ModelParticipantSyncInfoSource.waitForCollectionToFinish(ModelParticipantSyncInfoSource.java:176) at org.eclipse.team.tests.ccvs.ui.ModelParticipantSyncInfoSource.internalMergeResources(ModelParticipantSyncInfoSource.java:384) at org.eclipse.team.tests.ccvs.ui.ModelParticipantSyncInfoSource.mergeResources(ModelParticipantSyncInfoSource.java:351) at org.eclipse.team.tests.ccvs.core.subscriber.CVSMergeSubscriberTest.mergeResources(CVSMergeSubscriberTest.java:65) at org.eclipse.team.tests.ccvs.core.subscriber.CVSMergeSubscriberTest.testUnmergableConflicts(CVSMergeSubscriberTest.java:290) at org.eclipse.team.tests.ccvs.core.EclipseTest.runTest(EclipseTest.java:1385) at org.eclipse.team.tests.ccvs.core.EclipseTest.runBare(EclipseTest.java:1232) at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24) at junit.extensions.TestSetup$1.protect(TestSetup.java:21) at junit.extensions.TestSetup.run(TestSetup.java:25) at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24) at junit.extensions.TestSetup$1.protect(TestSetup.java:21) at junit.extensions.TestSetup.run(TestSetup.java:25) at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24) at junit.extensions.TestSetup$1.protect(TestSetup.java:21) at junit.extensions.TestSetup.run(TestSetup.java:25) at org.eclipse.test.EclipseTestRunner.run(EclipseTestRunner.java:332) at org.eclipse.test.EclipseTestRunner.run(EclipseTestRunner.java:202) at org.eclipse.test.UITestApplication$3.run(UITestApplication.java:195) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:123) at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3264) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2951) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2365) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2329) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2204) at org.eclipse.ui.internal.Workbench$4.run(Workbench.java:466) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:289) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:461) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:101) at org.eclipse.test.UITestApplication.runApplication(UITestApplication.java:138) at org.eclipse.test.UITestApplication.run(UITestApplication.java:60) at org.eclipse.test.UITestApplication.start(UITestApplication.java:210) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:153) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:106) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:76) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:363) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:176) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:480) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:419) at org.eclipse.equinox.launcher.Main.run(Main.java:1145) at org.eclipse.equinox.launcher.Main.main(Main.java:1120) at org.eclipse.core.launcher.Main.main(Main.java:24) Caused by: java.lang.NullPointerException at org.eclipse.ui.internal.statushandlers.StatusNotificationManager$3.run(StatusNotificationManager.java:128) at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35) at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:123)

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