In both the internal and external diff3 routines, I found requirements
to which I can't find any evidence in the code. Nor did I find any
references in the mailing list archives of anybody having problems
indicating there would be requirements to this effect.
So I propose applying the patch below (so I can simplify svn_wc_merge2).
Simplify diff3 requirements because they needlessly complicate calling code
and there's no evidence they are actually required.
(svn_diff_file_diff3_2): The paths don't need to be absolute; we just
pass them to svn_io_file_open().
(svn_io_run_diff3_2): There's no evidence we require the files to be
relative to the working directory; we just pass them to diff3.
--- subversion/include/svn_diff.h (revision 20240)
+++ subversion/include/svn_diff.h (working copy)
@@ -397,8 +397,8 @@
* @since New in 1.4.
* Return a diff object in @a *diff (allocated from @a pool) that represents
- * the difference between an @a original file, @a modified file, and @a latest
- * file. (The file arguments must be full paths to the files.)
+ * the difference between an @a original file, @a modified file, and @a latest
+ * file.
* Compare lines according to the relevant fields of @a options.
--- subversion/include/svn_io.h (revision 20240)
+++ subversion/include/svn_io.h (working copy)
@@ -912,8 +912,8 @@
* If @a user_args is non-NULL, replace "-E" with the <tt>const char*</tt>
* elements that @a user_args contains.
- * @a mine, @a older, and @a yours are utf8-encoded paths, relative to @a dir,
- * to three files that already exist. @a merged is an open file handle, and
+ * @a mine, @a older and @a yours are utf8-encoded paths to three files
+ * that already exist. @a merged is an open file handle, and
* is left open after the merge result is written to it. (@a merged
* should *not* be the same file as @a mine, or nondeterministic things
* may happen!)
To unsubscribe, e-mail: firstname.lastname@example.org
For additional commands, e-mail: email@example.com
Received on Sat Jun 24 21:44:09 2006