Author: gbg
Date: Tue May 21 22:51:12 2013
New Revision: 1485004
URL: http://svn.apache.org/r1485004
Log:
On the invoke-diff-cmd branch: Fix error messages. Add comments to
document non-canonical path usage.
* subversion/libsvn_client/diff.c
(diff_content_changed): Add comment explaining the presence of
non-canonical path in function call.
* subversion/svn/io.c
(svn_io_run_external_diff): Fix layering violation in first error
message. Remove CR from second error message.
Modified:
subversion/branches/invoke-diff-cmd-feature/subversion/libsvn_client/diff.c
subversion/branches/invoke-diff-cmd-feature/subversion/libsvn_subr/io.c
Modified:
subversion/branches/invoke-diff-cmd-feature/subversion/libsvn_client/diff.c
URL:
http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/libsvn_client/diff.c?rev=1485004&r1=1485003&r2=1485004&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/libsvn_client/diff.c
(original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/libsvn_client/diff.c
Tue May 21 22:51:12 2013
@@ -821,6 +821,7 @@ diff_content_changed(svn_boolean_t *wrot
scratch_pool, scratch_pool));
if (diff_cmd_baton->diff_cmd)
+ /* "." is a non-canonical path for the diff process's working
directory. */
SVN_ERR(svn_io_run_diff2(".",
diff_cmd_baton->options.for_external.argv,
diff_cmd_baton->options.for_external.argc,
@@ -829,14 +830,13 @@ diff_content_changed(svn_boolean_t *wrot
&exitcode, outfile, errfile,
diff_cmd_baton->diff_cmd, scratch_pool));
else
- {
- SVN_ERR(
- svn_io_run_external_diff(".",
- label1, label2,
- tmpfile1, tmpfile2,
- &exitcode, outfile, errfile,
- diff_cmd_baton->invoke_diff_cmd,
- scratch_pool));
+ { /* "." is a non-canonical path for the diff process's working
directory. */
+ SVN_ERR(svn_io_run_external_diff(".",
+ label1, label2,
+ tmpfile1, tmpfile2,
+ &exitcode, outfile, errfile,
+ diff_cmd_baton->invoke_diff_cmd,
+ scratch_pool));
}
SVN_ERR(svn_io_file_close(outfile, scratch_pool));
SVN_ERR(svn_io_file_close(errfile, scratch_pool));
Modified:
subversion/branches/invoke-diff-cmd-feature/subversion/libsvn_subr/io.c
URL:
http://svn.apache.org/viewvc/subversion/branches/invoke-diff-cmd-feature/subversion/libsvn_subr/io.c?rev=1485004&r1=1485003&r2=1485004&view=diff
==============================================================================
--- subversion/branches/invoke-diff-cmd-feature/subversion/libsvn_subr/io.c
(original)
+++ subversion/branches/invoke-diff-cmd-feature/subversion/libsvn_subr/io.c Tue
May 21 22:51:12 2013
@@ -3017,8 +3017,7 @@ svn_io_run_external_diff(const char *dir
const char ** cmd;
if (0 == strlen(external_diff_cmd))
- return svn_error_createf(SVN_ERR_CL_INSUFFICIENT_ARGS, NULL,
- _("The --invoke-diff-cmd string was empty.\n"));
+ return svn_error_createf(SVN_ERR_INCORRECT_PARAMS, NULL, NULL);
cmd = svn_io_create_custom_diff_cmd(label1, label2, NULL,
tmpfile1, tmpfile2, NULL,
@@ -3046,7 +3045,7 @@ svn_io_run_external_diff(const char *dir
}
return svn_error_createf(SVN_ERR_EXTERNAL_PROGRAM, NULL,
- _("'%s' was expanded to '%s' and returned
%d\n"),
+ _("'%s' was expanded to '%s' and returned %d"),
external_diff_cmd,
svn_dirent_local_style(failed_command, pool),
*pexitcode);