Bug 29500 Cannot cancel organize imports
After selecting organize imports on my project (to reduce the 4175 warnings about unused imports I got when I upgraded to 2.1 M4), I decided that maybe this was going to take longer than I thought, so I tried to cancel the action. The cancel button on the dialog didn't to do anything. I can repeat this at will with my project. I'm using Sun's JDK 1.4.1_01 on Debian GNU/Linux, SWT/Motif.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/ui/actions/OrganizeImportsAction.java
} else {
			runOnMultiple(cus, true);
		}
	}
	private void runOnMultiple(final ICompilationUnit[] cus, final boolean doResolve) {
		try {
			String message= ActionMessages.getString("OrganizeImportsAction.multi.status.description"); 
			final MultiStatus status= new MultiStatus(JavaUI.ID_PLUGIN, Status.OK, message, null);
			
			ProgressMonitorDialog dialog= new ProgressMonitorDialog(getShell());
			dialog.run(false, true, new WorkbenchRunnableAdapter(new IWorkspaceRunnable() {
				public void run(IProgressMonitor monitor) {
					doRunOnMultiple(cus, status, doResolve, monitor);
				}
			}));
			if (!status.isOK()) {
				String title= ActionMessages.getString("OrganizeImportsAction.multi.status.title"); 
				ProblemDialog.open(getShell(), title, null, status);
			}
		} catch (InvocationTargetException e) {
			ExceptionHandler.handle(e, getShell(), ActionMessages.getString("OrganizeImportsAction.error.title"), ActionMessages.getString("OrganizeImportsAction.error.message")); 
		} catch (InterruptedException e) {
			
		}		
		
	}
	
	private void doRunOnMultiple(ICompilationUnit[] cus, MultiStatus status, boolean doResolve, IProgressMonitor monitor) throws OperationCanceledException {
	
		final class OrganizeImportError extends Error {