Bug 123316 [Undo] - API BEHAVIOR - should always place a successfully undone/redone op on the redo/undo history
bundles/org.eclipse.core.commands/src/org/eclipse/core/commands/operations/DefaultOperationHistory.java
redoList.remove(operation);
				internalRemove(operation);
			} else {
				
				operation.removeContext(context);
			}
		}
	}
	/*
	 * Flush the undo stack of all operations that have the given context.
	 */
	private void flushUndo(IUndoContext context) {
		if (DEBUG_OPERATION_HISTORY_DISPOSE) {
			Tracing.printTrace("OPERATIONHISTORY", "Flushing undo history for " 
					+ context);
		}
		Object[] filtered = filter(undoList, context);
		for (int i = 0; i < filtered.length; i++) {
			IUndoableOperation operation = (IUndoableOperation) filtered[i];
			if (context == GLOBAL_UNDO_CONTEXT
					|| operation.getContexts().length == 1) {
				
				
				undoList.remove(operation);
				internalRemove(operation);
			} else {
				
				operation.removeContext(context);