Bug 173049 [ErrorHandling] multiple stacked "Internal error" dialogs after OutOfMemoryError
I20070206-0010 - launch Eclipse with: java -showversion -jar plugins\org.eclipse.equinox.launcher_*.jar -data oom -clean -consolelog -console -showlocation - File > Import > Projects from CVS - import org.eclipse.jdt.ui => 4 OutOfMemoryErrors in the log, 3 stacked "Internal error", see screenshot. !ENTRY org.eclipse.core.jobs 4 2 2007-02-06 14:32:25.761 !MESSAGE An internal error occurred during: "Building workspace". !STACK 0 java.lang.OutOfMemoryError: Java heap space !ENTRY org.eclipse.ui 4 0 2007-02-06 14:32:25.761 !MESSAGE Unhandled event loop exception !STACK 0 java.lang.OutOfMemoryError: Java heap space !ENTRY org.eclipse.core.jobs 4 2 2007-02-06 14:32:52.462 !MESSAGE An internal error occurred during: "Building workspace". !STACK 0 java.lang.OutOfMemoryError: Java heap space !ENTRY org.eclipse.ui 4 0 2007-02-06 14:32:52.478 !MESSAGE Unhandled event loop exception !STACK 0 java.lang.OutOfMemoryError: Java heap space
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/IDEWorkbenchErrorHandler.java
*/
	public void handle(final StatusAdapter statusAdapter, int style) {
		if (statusAdapter.getStatus().getException() != null) {
			UIJob handlingExceptionJob = new UIJob("IDE Exception Handler") 
			{
				/*
				 * (non-Javadoc)
				 * 
				 * @see org.eclipse.ui.progress.UIJob#runInUIThread(org.eclipse.core.runtime.IProgressMonitor)
				 */
				public IStatus runInUIThread(IProgressMonitor monitor) {
					handleException(statusAdapter.getStatus().getException());
					return new Status(
							IStatus.OK,
							IDEWorkbenchPlugin.IDE_WORKBENCH,
							IDEWorkbenchMessages.IDEExceptionHandler_ExceptionHandledMessage);
				}
			};
			handlingExceptionJob.setSystem(true);
			handlingExceptionJob.schedule();
		}
		super.handle(statusAdapter, style);
	}
	private Shell getParentShell() {
		if (defaultParent == null) {
			defaultParent = new Shell();
		}
		return defaultParent;
	}
	/**