// do a 3-way diff between the base, the local and the remote one.
// we currently do not use document sources, since we don't really have
// a label to provide (like rev. num, etc).
Reader r0 = baseFile.getReader();
Reader r1 = tmpFile.getReader();
Document baseDoc = new Document(null, LineElementsFactory.create(new MetaFileDocSource(baseFile), r0, false));
Document leftDoc = new Document(null, LineElementsFactory.create(new FileDocumentSource(file), false, Constants.ENCODING));
Document rightDoc = new Document(null, LineElementsFactory.create(new MetaFileDocSource(tmpFile), r1, false));
DocumentDiff3 diff;
try {
diff = baseDoc.diff3(leftDoc, rightDoc);
} finally {