Project: Eclipse_Platform_UI
Bug 326312 [Preferences] NullPointerException when pressing ok in perspectives preferences, when all perspectives are closed
Reported: 2010-09-27 10:49:51 | Status: verified fixed

Found on 3.6.0 Steps to reproduce: 1. press Window -> Close All Perspectives 2. open prefrences, go to General > Perspectives, press OK stack trace: Daemon Thread [Thread-0] (Suspended (exception NullPointerException)) IDEPerspectivesPreferencePage(PerspectivesPreferencePage).performOk() line: 605 IDEPerspectivesPreferencePage.performOk() line: 114 PreferenceDialog$13.run() line: 964 SafeRunner.run(ISafeRunnable) line: 42 JFaceUtil$1.run(ISafeRunnable) line: 49 SafeRunnable.run(ISafeRunnable) line: 175 WorkbenchPreferenceDialog(PreferenceDialog).okPressed() line: 944 WorkbenchPreferenceDialog(FilteredPreferenceDialog).okPressed() line: 447 WorkbenchPreferenceDialog.okPressed() line: 169 WorkbenchPreferenceDialog(PreferenceDialog).buttonPressed(int) line: 233 Dialog$2.widgetSelected(SelectionEvent) line: 624 TypedListener.handleEvent(Event) line: 234 EventTable.sendEvent(Event) line: 84 Display.sendEvent(EventTable, Event) line: 3776 Button(Widget).sendEvent(Event) line: 1367 Button(Widget).sendEvent(int, Event, boolean) line: 1390 Button(Widget).sendEvent(int, Event) line: 1375 Button(Widget).notifyListeners(int, Event) line: 1187 Display.runDeferredEvents() line: 3622 Display.readAndDispatch() line: 3277 WorkbenchPreferenceDialog(Window).runEventLoop(Shell) line: 825 WorkbenchPreferenceDialog(Window).open() line: 801 WorkbenchPreferenceDialog.open() line: 211 OpenPreferencesAction.run() line: 65 CocoaUIEnhancer.runAction(String) line: 416 CocoaUIEnhancer.preferencesMenuItemSelected() line: 516 CocoaUIEnhancer.actionProc(long, long, long) line: 538 CocoaUIEnhancer.actionProc(int, int, int) line: 524 OS.objc_msgSendSuper(objc_super, int, int, int, int, boolean) line: not available [native method] Display.applicationNextEventMatchingMask(int, int, int, int, int, int) line: 4483 Display.applicationProc(int, int, int, int, int, int) line: 4739 OS.objc_msgSend(int, int, int, int, int, boolean) line: not available [native method] NSApplication.nextEventMatchingMask(int, NSDate, NSString, boolean) line: 85 Display.readAndDispatch() line: 3271 Workbench.runEventLoop(Window$IExceptionHandler, Display) line: 2629 Workbench.runUI() line: 2593 Workbench.access$4(Workbench) line: 2427 Workbench$7.run() line: 670 Realm.runWithDefault(Realm, Runnable) line: 332 Workbench.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 663 PlatformUI.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 149 IDEApplication.start(IApplicationContext) line: 115 EclipseAppHandle.run(Object) line: 196 EclipseAppLauncher.runApplication(Object) line: 110 EclipseAppLauncher.start(Object) line: 79 EclipseStarter.run(Object) line: 369 EclipseStarter.run(String[], Runnable) line: 179 NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not available [native method] NativeMethodAccessorImpl.invoke(Object, Object[]) line: 39 DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 25 Method.invoke(Object, Object...) line: 597 Main.invokeFramework(String[], URL[]) line: 619 Main.basicRun(String[]) line: 574 Main.run(String[]) line: 1407 Main.main(String[]) line: 1383

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