Hi All,

Prabhu got stuck with his upcoming default 'send-copy-args=True' work for his diff enhancements.

Basically he got diff-tests-44 to fail due to "ambient_depth_filter_editor is *not* ignoring 'SVN_ERR_WC_PATH_NOT_FOUND' errors."

I could see many other callers ignoring the errors 'SVN_ERR_WC_PATH_NOT_FOUND' especially when it is returned by svn_wc__db_read_info(Ex subversion/libsvn_wc/diff.c:close_file).

I guess ambient_depth_filter_editor's close_file can also behave like others.

I lack a context to justify this fix, here right now.

I am yet to run full testsuite, I ran only diff_tests with this patch and Prabhu's patch it passes.

Any thoughts?

With regards
Kamesh Jayachandran


Index: subversion/libsvn_wc/ambient_depth_filter_editor.c
===================================================================
--- subversion/libsvn_wc/ambient_depth_filter_editor.c  (revision 1043358)
+++ subversion/libsvn_wc/ambient_depth_filter_editor.c  (working copy)
@@ -586,14 +586,22 @@
            const char *text_checksum,
            apr_pool_t *pool)
 {
+  svn_error_t *err;
   struct file_baton *fb = file_baton;
   struct edit_baton *eb = fb->edit_baton;
 
   if (fb->ambiently_excluded)
     return SVN_NO_ERROR;
 
-  return eb->wrapped_editor->close_file(fb->wrapped_baton,
-                                        text_checksum, pool);
+  err = eb->wrapped_editor->close_file(fb->wrapped_baton,
+                                       text_checksum, pool);
+  if (err && err->apr_err == SVN_ERR_WC_PATH_NOT_FOUND)
+    {
+      svn_error_clear(err);
+      return SVN_NO_ERROR;
+    }
+  else
+    return err;
 }
 
 /* */

Reply via email to