Bug 100889 [Undo] - AbstractOperation toString() appends bogus comma
The toString() on AbstractOperation puts commas between undo contexts, and also puts one at the end. It looks pretty bogus in the operation history view. Should clean up to not add the very last comma.
bundles/org.eclipse.core.commands/src/org/eclipse/core/commands/operations/AbstractOperation.java
* @see org.eclipse.core.commands.operations.IUndoableOperation#hasContext(org.eclipse.core.commands.operations.IUndoContext)
	 */
	public final boolean hasContext(IUndoContext context) {
		Assert.isNotNull(context);
		for (int i = 0; i < contexts.size(); i++) {
			IUndoContext otherContext = (IUndoContext) contexts.get(i);
			
			
			
			if (context.matches(otherContext) || otherContext.matches(context))
				return true;
		}
		return false;
	}
	/*
	 * (non-Javadoc)
	 * 
	 * @see org.eclipse.core.commands.operations.IUndoableOperation#redo(org.eclipse.core.runtime.IProgressMonitor,
	 *      org.eclipse.core.runtime.IAdaptable)
	 */
	public abstract IStatus redo(IProgressMonitor monitor, IAdaptable info)
			throws ExecutionException;
	/*
	 * (non-Javadoc)
	 * 
	 * @see org.eclipse.core.commands.operations.IUndoableOperation#removeContext(org.eclipse.core.commands.operations.IUndoContext)
	 *      <p> Default implementation. Subclasses may override this method.
	 *      </p>
	 */
	public void removeContext(IUndoContext context) {