You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by br...@apache.org on 2013/01/04 22:31:31 UTC

svn commit: r1429135 - /subversion/trunk/subversion/svnserve/serve.c

Author: breser
Date: Fri Jan  4 21:31:31 2013
New Revision: 1429135

URL: http://svn.apache.org/viewvc?rev=1429135&view=rev
Log:
Canonicalize when svnserve.conf has a URL as the authz-db config setting.

* subversion/svnserve/serve.c
  (load_authz_config): URLs should have been canonical.

Modified:
    subversion/trunk/subversion/svnserve/serve.c

Modified: subversion/trunk/subversion/svnserve/serve.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svnserve/serve.c?rev=1429135&r1=1429134&r2=1429135&view=diff
==============================================================================
--- subversion/trunk/subversion/svnserve/serve.c (original)
+++ subversion/trunk/subversion/svnserve/serve.c Fri Jan  4 21:31:31 2013
@@ -284,11 +284,15 @@ svn_error_t *load_authz_config(server_ba
     {
       const char *case_force_val;
 
-      if (!svn_path_is_repos_relative_url(authzdb_path) &&
-          !svn_path_is_url(authzdb_path))
+      /* Canonicalize and add the base onto the authzdb_path (if needed).
+       * We don't canonicalize repos relative urls since they are
+       * canonicalized when they are resolved in svn_repos_authz_read2(). */
+      if (svn_path_is_url(authzdb_path))
+        {
+          authzdb_path = svn_uri_canonicalize(authzdb_path, pool);
+        }
+      else if (!svn_path_is_repos_relative_url(authzdb_path))
         {
-          /* Canonicalize and add the base onto authzdb_path (if needed)
-           * when authzdb_path is not a URL (repos relative or absolute). */
           authzdb_path = svn_dirent_canonicalize(authzdb_path, pool);
           authzdb_path = svn_dirent_join(server->base, authzdb_path, pool);
         }