Index: subversion/svnadmin/main.c =================================================================== --- subversion/svnadmin/main.c (revision 24398) +++ subversion/svnadmin/main.c (working copy) @@ -1204,6 +1204,7 @@ svn_pool_clear(subpool); } + svn_pool_destroy(subpool); return SVN_NO_ERROR; } Index: subversion/svnsync/main.c =================================================================== --- subversion/svnsync/main.c (revision 24398) +++ subversion/svnsync/main.c (working copy) @@ -1,6 +1,6 @@ /* * ==================================================================== - * Copyright (c) 2005-2006 CollabNet. All rights reserved. + * Copyright (c) 2005-2007 CollabNet. All rights reserved. * * This software is licensed as described in the file COPYING, which * you should have received as part of this distribution. The terms @@ -1171,6 +1171,7 @@ NULL, subpool)); } + svn_pool_destroy(subpool); return SVN_NO_ERROR; } Index: subversion/libsvn_repos/log.c =================================================================== --- subversion/libsvn_repos/log.c (revision 24398) +++ subversion/libsvn_repos/log.c (working copy) @@ -289,6 +289,9 @@ don't fetch any more for this path. */ if (info->history_rev < start) { + svn_pool_destroy(subpool); + if (info->oldpool) + svn_pool_destroy(info->oldpool); info->done = TRUE; return SVN_NO_ERROR; } Index: subversion/libsvn_delta/path_driver.c =================================================================== --- subversion/libsvn_delta/path_driver.c (revision 24398) +++ subversion/libsvn_delta/path_driver.c (working copy) @@ -2,7 +2,7 @@ * path_driver.c -- drive an editor across a set of paths * * ==================================================================== - * Copyright (c) 2000-2004 CollabNet. All rights reserved. + * Copyright (c) 2000-2007 CollabNet. All rights reserved. * * This software is licensed as described in the file COPYING, which * you should have received as part of this distribution. The terms @@ -138,14 +138,15 @@ int i = 0; void *parent_db = NULL, *db = NULL; const char *path; - apr_pool_t *subpool = svn_pool_create(pool); - apr_pool_t *iterpool = svn_pool_create(pool); - dir_stack_t *item = apr_pcalloc(subpool, sizeof(*item)); /* Do nothing if there are no paths. */ if (! paths->nelts) return SVN_NO_ERROR; + apr_pool_t *subpool = svn_pool_create(pool); + apr_pool_t *iterpool = svn_pool_create(pool); + dir_stack_t *item = apr_pcalloc(subpool, sizeof(*item)); + /* Sort the paths in a depth-first directory-ish order. */ qsort(paths->elts, paths->nelts, paths->elt_size, svn_sort_compare_paths);