Bug 57600 New user progress dialog needs to check if it needs to close
The done() method on the ProgressMonitorFocusJobsDialog is still running even if the workbench is shutdown. java.lang.IllegalStateException: Job manager has been shut down. at org.eclipse.core.internal.jobs.JobManager.schedule (JobManager.java:639) at org.eclipse.core.internal.jobs.InternalJob.schedule (InternalJob.java:268) at org.eclipse.core.runtime.jobs.Job.schedule(Job.java:363) at org.eclipse.ui.internal.progress.ProgressMonitorFocusJobDialog$1.done (ProgressMonitorFocusJobDialog.java:123) at org.eclipse.core.internal.jobs.JobListeners$3.notify (JobListeners.java:38) at org.eclipse.core.internal.jobs.JobListeners$7.run (JobListeners.java:117) at org.eclipse.core.internal.runtime.InternalPlatform.run (InternalPlatform.java:607) at org.eclipse.core.internal.jobs.JobListeners.doNotify (JobListeners.java:87) at org.eclipse.core.internal.jobs.JobListeners.done (JobListeners.java:136) at org.eclipse.core.internal.jobs.JobManager.endJob (JobManager.java:372) at org.eclipse.core.internal.jobs.WorkerPool.endJob (WorkerPool.java:124) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:72)
bundles/org.eclipse.ui.ide/extensions/org/eclipse/ui/actions/GlobalBuildAction.java
}
	};
	
	buildJob.setRule(ResourcesPlugin.getWorkspace().getRuleFactory().buildRule());
	buildJob.schedule();
	
}
/**
 * Returns an array of all projects in the workspace
 */
 IProject[] getWorkspaceProjects() {
	return ResourcesPlugin.getWorkspace().getRoot().getProjects();
}
/* (non-Javadoc)
 * Method declared on IAction.
 * 
 * Builds all projects within the workspace. Saves
 * all editors prior to build depending on user's
 * preference.
 */
public void run() {
	if (workbenchWindow == null) {
		
		return;
	}
	
	IProject[] roots = getWorkspaceProjects();
	if (roots.length < 1)
		return;