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/11/01 23:18:06 UTC

svn commit: r1538072 - in /subversion/trunk/subversion/libsvn_subr: config.c config_impl.h

Author: stefan2
Date: Fri Nov  1 22:18:06 2013
New Revision: 1538072

URL: http://svn.apache.org/r1538072
Log:
Use svn_config_t.x_pool only for data that gets (temporarily) stored
in our config tree.  This will allow us to not create the x_pool for
r/o configs at all because they are always fully expanded.

* subversion/libsvn_subr/config_impl.h
  (svn_config_t): update commentary

* subversion/libsvn_subr/config.c
  (svn_config_get,
   svn_config_enumerate): use cfg->pool instead of x_pool as bases for
                          temporary pools

Modified:
    subversion/trunk/subversion/libsvn_subr/config.c
    subversion/trunk/subversion/libsvn_subr/config_impl.h

Modified: subversion/trunk/subversion/libsvn_subr/config.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/config.c?rev=1538072&r1=1538071&r2=1538072&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_subr/config.c (original)
+++ subversion/trunk/subversion/libsvn_subr/config.c Fri Nov  1 22:18:06 2013
@@ -703,11 +703,11 @@ svn_config_get(svn_config_t *cfg, const 
         }
       else
         /* before attempting to expand an option, check for the placeholder.
-         * If none is there, there is no point in calling expand_option_value.
+         * If there is none, there is no point in calling expand_option_value.
          */
         if (default_value && strchr(default_value, '%'))
           {
-            apr_pool_t *tmp_pool = svn_pool_create(cfg->x_pool);
+            apr_pool_t *tmp_pool = svn_pool_create(cfg->pool);
             const char *x_default;
             expand_option_value(cfg, sec, default_value, &x_default, tmp_pool);
             if (x_default)
@@ -985,7 +985,7 @@ svn_config_enumerate(svn_config_t *cfg, 
   if (sec == NULL)
     return 0;
 
-  subpool = svn_pool_create(cfg->x_pool);
+  subpool = svn_pool_create(cfg->pool);
   count = 0;
   for (opt_ndx = apr_hash_first(subpool, sec->options);
        opt_ndx != NULL;

Modified: subversion/trunk/subversion/libsvn_subr/config_impl.h
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/config_impl.h?rev=1538072&r1=1538071&r2=1538072&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_subr/config_impl.h (original)
+++ subversion/trunk/subversion/libsvn_subr/config_impl.h Fri Nov  1 22:18:06 2013
@@ -47,7 +47,8 @@ struct svn_config_t
   /* Table of cfg_section_t's. */
   apr_hash_t *sections;
 
-  /* Pool for hash tables, table entries and unexpanded values */
+  /* Pool for hash tables, table entries and unexpanded values.
+     Also, parent pool for temporary pools. */
   apr_pool_t *pool;
 
   /* Pool for expanded values -- this is separate, so that we can