You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Greg Stein <gs...@gmail.com> on 2009/04/08 22:31:23 UTC

Re: svn commit: r37120 - in trunk/subversion: libsvn_wc tests/cmdline

On Wed, Apr 8, 2009 at 22:34, Hyrum K. Wright <hy...@hyrumwright.org> wrote:
>...
> +++ trunk/subversion/libsvn_wc/log.c    Wed Apr  8 13:34:37 2009        (r37120)
>...
> +  /* Now recurse. */
> +  SVN_ERR(svn_wc_entries_read(&entries, adm_access, FALSE, scratch_pool));
> +  for (hi = apr_hash_first(scratch_pool, entries); hi; hi = apr_hash_next(hi))
> +    {
> +      const void *key;
> +      void *val;
> +      const svn_wc_entry_t *entry;
> +      const char *entry_path;
> +
> +      svn_pool_clear(iterpool);
> +      apr_hash_this(hi, &key, NULL, &val);
> +      entry = val;
> +      entry_path = svn_dirent_join(path, key, iterpool);
> +
> +      if (entry->kind != svn_node_dir
> +            || strcmp(key, SVN_WC_ENTRY_THIS_DIR) == 0)
> +        continue;
> +
> +      SVN_ERR(upgrade_working_copy(entry_path, diff3_cmd, cancel_func,
> +                                   cancel_baton, scratch_pool));

iterpool!

> +    }
> +  svn_pool_destroy(iterpool);
> +
> +  return svn_wc_adm_close2(adm_access, scratch_pool);
>...
> +  if (upgrade_wc && wc_format_version < SVN_WC__VERSION)

what happens if curdir is fine, but subdir is not? :-P

It might not be a big deal to fix during this transitionary point, so
I'd say: fix, or leave comment. With wc-ng, it won't be possible to
have curdir updated and old subdirs, so this test basically works.

> +    {
> +      /* Second, do the upgrade. */
> +      SVN_ERR(upgrade_working_copy(path, diff3_cmd, cancel_func,
> +                                   cancel_baton, scratch_pool));
> +
> +      /* Third, run logs again. */

iirc, svn_wc__upgrade_format() runs any logs before returning.

Cheers,
-g

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=1603439