Bug 89031 [Undo/Redo] IWorkbench#getOperationSupport() marked experimental
IWorkbench#getOperationSupport() marked experimental
bundles/org.eclipse.core.commands/src/org/eclipse/core/commands/operations/DefaultOperationHistory.java
* @param monitor
	 * @param operation
	 */
	protected IStatus doUndo(IProgressMonitor monitor, IAdaptable info, IUndoableOperation operation,
			boolean flushOnError) throws ExecutionException {
		IStatus status = getUndoApproval(operation, info);
		if (status.isOK()) {
			notifyAboutToUndo(operation);
			try {
				status = operation.undo(monitor, info);
			} catch (OperationCanceledException e) {
				status = Status.CANCEL_STATUS;
			} catch (ExecutionException e) {
				notifyNotOK(operation);
				if (DEBUG_OPERATION_HISTORY_UNEXPECTED) {
					System.out.print("OPERATIONHISTORY >>> ExecutionException while undoing ");  
					System.out.print(operation);
					System.out.println();
				}
				throw e;
			} catch (Exception e) {
				notifyNotOK(operation);
				if (DEBUG_OPERATION_HISTORY_UNEXPECTED) {
					System.out.print("OPERATIONHISTORY >>> Exception while undoing ");  
					System.out.print(operation);
					System.out.println();
				}
				throw new ExecutionException(
					"While undoing the operation, an exception occurred", e); 
			}