result[0] = differencer.findDifferences(threeWay, sub, null, ancestor, left, right);
result[0] = new RevisionAwareDifferencer().findDifferences(threeWay, sub, null, ancestor, left, right);
	protected Object prepareInput(IProgressMonitor monitor) throws InterruptedException {		final boolean threeWay = ancestor != null;		if (right == null || left == null) {			setMessage(Policy.bind("SVNCompareEditorInput.different")); //$NON-NLS-1$			return null;		}		initLabels();			try {				// do the diff				final Object[] result = new Object[] { null };			monitor.beginTask(Policy.bind("SVNCompareEditorInput.comparing"), 30); //$NON-NLS-1$			IProgressMonitor sub = new SubProgressMonitor(monitor, 30);			sub.beginTask(Policy.bind("SVNCompareEditorInput.comparing"), 100); //$NON-NLS-1$			try {				result[0] = differencer.findDifferences(threeWay, sub, null, ancestor, left, right);			} finally {				sub.done();			}			return result[0];		} catch (OperationCanceledException e) {			throw new InterruptedException(e.getMessage());		} catch (RuntimeException e) {			handle(e);			return null;		} finally {			monitor.done();		}	}