Author: stefan2
Date: Fri Sep 27 21:19:50 2013
New Revision: 1527084
URL: http://svn.apache.org/r1527084
Log:
We should not ascribe all problems detected by is_changed_node()
to simple out-of-date-ness. FS corruption etc. should still
reported as such to (ultimately) the client.
* subversion/libsvn_fs_fs/tree.c
(copy_helper): only report "node not found" as "out of date"
Found by: ivan
Modified:
subversion/trunk/subversion/libsvn_fs_fs/tree.c
Modified: subversion/trunk/subversion/libsvn_fs_fs/tree.c
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_fs_fs/tree.c?rev=1527084&r1=1527083&r2=1527084&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_fs_fs/tree.c (original)
+++ subversion/trunk/subversion/libsvn_fs_fs/tree.c Fri Sep 27 21:19:50 2013
@@ -2513,6 +2513,13 @@ copy_helper(svn_fs_root_t *from_root,
svn_error_t *err = is_changed_node(&changed, from_root,
from_path, txn_id->revision,
pool);
+
+ /* Only "not found" is considered to be caused by out-of-date-ness.
+ Everything else means something got very wrong ... */
+ if (err && err->apr_err != SVN_ERR_FS_NOT_FOUND)
+ return svn_error_trace(err);
+
+ /* here error means "out of data" */
if (err || changed)
{
svn_error_clear(err);