You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by st...@apache.org on 2014/03/05 13:48:56 UTC
svn commit: r1574459 - /subversion/trunk/subversion/svn/conflict-callbacks.c
Author: stsp
Date: Wed Mar 5 12:48:55 2014
New Revision: 1574459
URL: http://svn.apache.org/r1574459
Log:
* subversion/svn/conflict-callbacks.c
(handle_text_conflict): Use svn_err_best_message() instead of hand-rolling
an error messsage to fall back on. Inform the user if falling back to the
internal merge tool.
Modified:
subversion/trunk/subversion/svn/conflict-callbacks.c
Modified: subversion/trunk/subversion/svn/conflict-callbacks.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svn/conflict-callbacks.c?rev=1574459&r1=1574458&r2=1574459&view=diff
==============================================================================
--- subversion/trunk/subversion/svn/conflict-callbacks.c (original)
+++ subversion/trunk/subversion/svn/conflict-callbacks.c Wed Mar 5 12:48:55 2014
@@ -821,12 +821,24 @@ handle_text_conflict(svn_wc_conflict_res
err = launch_resolver(&performed_edit, desc, b, iterpool);
if (err)
{
- if (err->apr_err == SVN_ERR_CL_NO_EXTERNAL_MERGE_TOOL ||
- err->apr_err == SVN_ERR_EXTERNAL_PROGRAM)
+ if (err->apr_err == SVN_ERR_CL_NO_EXTERNAL_MERGE_TOOL)
{
/* Try the internal merge tool. */
svn_error_clear(err);
}
+ else if (err->apr_err == SVN_ERR_EXTERNAL_PROGRAM)
+ {
+ char buf[1024];
+ const char *message;
+
+ message = svn_err_best_message(err, buf, sizeof(buf));
+ SVN_ERR(svn_cmdline_fprintf(stderr, iterpool,
+ "%s\n", message));
+ SVN_ERR(svn_cmdline_fputs(_("Falling back to internal "
+ "merge tool.\n"), stderr,
+ iterpool));
+ svn_error_clear(err);
+ }
else
return svn_error_trace(err);
}