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 2013/07/20 01:54:39 UTC

svn commit: r1505066 - in /subversion/trunk: ./ subversion/libsvn_fs/fs-loader.c

Author: stefan2
Date: Fri Jul 19 23:54:39 2013
New Revision: 1505066

URL: http://svn.apache.org/r1505066
Log:
Merged revision 1498103, 1498155 from subversion/branches/fsfs-format7:
Teach the FS loader to handle an arbitrary number of modules.

Modified:
    subversion/trunk/   (props changed)
    subversion/trunk/subversion/libsvn_fs/fs-loader.c

Propchange: subversion/trunk/
------------------------------------------------------------------------------
  Merged /subversion/branches/fsfs-format7:r1498103,1498155

Modified: subversion/trunk/subversion/libsvn_fs/fs-loader.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_fs/fs-loader.c?rev=1505066&r1=1505065&r2=1505066&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_fs/fs-loader.c (original)
+++ subversion/trunk/subversion/libsvn_fs/fs-loader.c Fri Jul 19 23:54:39 2013
@@ -221,21 +221,19 @@ static svn_error_t *
 get_library_vtable(fs_library_vtable_t **vtable, const char *fs_type,
                    apr_pool_t *pool)
 {
-  struct fs_type_defn **fst = &fs_modules;
+  struct fs_type_defn **fst;
   svn_boolean_t known = FALSE;
 
   /* There are two FS module definitions known at compile time.  We
      want to check these without any locking overhead even when
      dynamic third party modules are enabled.  The third party modules
      cannot be checked until the lock is held.  */
-  if (strcmp(fs_type, (*fst)->fs_type) == 0)
-    known = TRUE;
-  else
-    {
-      fst = &(*fst)->next;
-      if (strcmp(fs_type, (*fst)->fs_type) == 0)
+  for (fst = &fs_modules; *fst; fst = &(*fst)->next)
+    if (strcmp(fs_type, (*fst)->fs_type) == 0)
+      {
         known = TRUE;
-    }
+        break;
+      }
 
 #if defined(SVN_USE_DSO) && APR_HAS_DSO
   /* Third party FS modules that are unknown at compile time.