Hi,

This patch fixes a bug in a helper function subversion/libsvn_repos/load-fs-vtable.c:change_rev_prop() to use property validation functions if 'validate_props' is 'TRUE'.

As "svnadmin load" does the property validation by default, 'validate_props'
parameter is always set to 'TRUE'. Updated the same in 'subversion/include/svn_repos.h'.

Attached the patch and log message.

NOTE: All tests *pass* with 'make check'.

Thanks & Regards,
Vijayaguru

Index: subversion/include/svn_repos.h
===================================================================
--- subversion/include/svn_repos.h      (revision 1235706)
+++ subversion/include/svn_repos.h      (working copy)
@@ -2649,7 +2649,7 @@
 /**
  * Similar to svn_repos_load_fs3(), but with @a feedback_stream in
  * place of the #svn_repos_notify_func_t and baton and with
- * @a validate_props always FALSE.
+ * @a validate_props always TRUE.
  *
  * @since New in 1.2.
  * @deprecated Provided for backward compatibility with the 1.6 API.
@@ -2885,7 +2885,7 @@
 /**
  * Similar to svn_repos_get_fs_build_parser3(), but with @a outstream
  * in place if a #svn_repos_notify_func_t and baton and with
- * @a validate_props always FALSE.
+ * @a validate_props always TRUE.
  *
  * @since New in 1.1.
  * @deprecated Provided for backward compatibility with the 1.6 API.
Index: subversion/libsvn_repos/load-fs-vtable.c
===================================================================
--- subversion/libsvn_repos/load-fs-vtable.c    (revision 1235706)
+++ subversion/libsvn_repos/load-fs-vtable.c    (working copy)
@@ -160,12 +160,12 @@
                 apr_pool_t *pool)
 {
   if (validate_props)
-    return svn_fs_change_rev_prop2(svn_repos_fs(repos), revision, name,
-                                   NULL, value, pool);
-  else
     return svn_repos_fs_change_rev_prop4(repos, revision, NULL, name,
                                          NULL, value, FALSE, FALSE,
                                          NULL, NULL, pool);
+  else
+    return svn_fs_change_rev_prop2(svn_repos_fs(repos), revision, name,
+                                   NULL, value, pool);
 }
 
 /* Change property NAME to VALUE for PATH in TXN_ROOT.  If
As "svnadmin load" does the property validation by default, 'validate_props'
parameter is always set to 'TRUE'. It is set to 'FALSE' if we
use '--bypass-prop-validation'.

Fix the helper function 'change_rev_prop' to use functions which perform
validation of the property value if 'validate_props' is 'TRUE'. Otherwise,
bypass those checks.

* subversion/include/svn_repos.h
  (svn_repos_load_fs2, svn_repos_get_fs_build_parser2): Update docstrings.

* subversion/libsvn_repos/load-fs-vtable.c
  (change_rev_prop): Do the property validation indeed if 'validate_props' is
    set.

Patch by: Vijayaguru G <vijay{_AT_}collab.net>

Reply via email to