[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: svn commit: r23454 - in trunk/subversion: include libsvn_client libsvn_subr

From: Daniel Rall <dlr_at_collab.net>
Date: 2007-02-21 18:39:25 CET

And after actually looking at the body of this commit, one might
notice that it just has the wrong change log message. ;-)

On Wed, 21 Feb 2007, Daniel Rall wrote:

> Looks like an unrelated change to svn_opt_resolve_revisions() slipped
> into this commit.
>
> - Dan
>
> On Wed, 21 Feb 2007, hwright@tigris.org wrote:
>
> > Author: hwright
> > Date: Wed Feb 21 08:49:45 2007
> > New Revision: 23454
> >
> > Log:
> > When harvesting copy committables, extend the use of the copy_pair loop
> > iterpool to the actual call to harvest_committables(), and document why this
> > is possible.
> >
> > The primary concern is that the commit_items added to the committables hash are
> > not allocated from the loop pool. But, because add_committable() uses the hash
> > pool to allocate the new commit_items, we can safely use the loop pool when
> > calling harvest_committables().
> >
> > This is a followup to r23403.
> >
> > * subversion/libsvn_client/commit_util.c
> > (add_committable, harvest_committables): Update comments to note the fact
> > that the new committable is allocated from the same pool as the committables
> > hash.
> > (svn_client__get_copy_committables): Use the iterpool for calls to
> > harvest_committables(), and add a comment explaining why this is possible.
> >
> >
> > Modified:
> > trunk/subversion/include/svn_opt.h
> > trunk/subversion/libsvn_client/copy.c
> > trunk/subversion/libsvn_client/ra.c
> > trunk/subversion/libsvn_subr/opt.c
> >
> > Modified: trunk/subversion/include/svn_opt.h
> > URL: http://svn.collab.net/viewvc/svn/trunk/subversion/include/svn_opt.h?pathrev=23454&r1=23453&r2=23454
> > ==============================================================================
> > --- trunk/subversion/include/svn_opt.h (original)
> > +++ trunk/subversion/include/svn_opt.h Wed Feb 21 08:49:45 2007
> > @@ -392,13 +392,16 @@
> > * If @a notice_local_mods is set, @c svn_opt_revision_working is used,
> > * instead of @c svn_opt_revision_base.
> > *
> > + * Use @a pool for allocations.
> > + *
> > * @since New in 1.5.
> > */
> > -void
> > +svn_error_t *
> > svn_opt_resolve_revisions(svn_opt_revision_t *peg_rev,
> > svn_opt_revision_t *op_rev,
> > svn_boolean_t is_url,
> > - svn_boolean_t notice_local_mods);
> > + svn_boolean_t notice_local_mods,
> > + apr_pool_t *pool);
> >
> >
> > /* Parsing arguments. */
> >
> > Modified: trunk/subversion/libsvn_client/copy.c
> > URL: http://svn.collab.net/viewvc/svn/trunk/subversion/libsvn_client/copy.c?pathrev=23454&r1=23453&r2=23454
> > ==============================================================================
> > --- trunk/subversion/libsvn_client/copy.c (original)
> > +++ trunk/subversion/libsvn_client/copy.c Wed Feb 21 08:49:45 2007
> > @@ -1343,10 +1343,11 @@
> > pair->src_op_revision = *source->revision;
> > pair->src_peg_revision = *source->peg_revision;
> >
> > - svn_opt_resolve_revisions(&pair->src_peg_revision,
> > - &pair->src_op_revision,
> > - svn_path_is_url(pair->src),
> > - TRUE);
> > + SVN_ERR(svn_opt_resolve_revisions(&pair->src_peg_revision,
> > + &pair->src_op_revision,
> > + svn_path_is_url(pair->src),
> > + TRUE,
> > + iterpool));
> > src_basename = svn_path_basename(pair->src, iterpool);
> >
> > /* Check to see if all the sources are urls or all working copy
> > @@ -1372,10 +1373,11 @@
> > pair->src_op_revision = *source->revision;
> > pair->src_peg_revision = *source->peg_revision;
> >
> > - svn_opt_resolve_revisions(&pair->src_peg_revision,
> > - &pair->src_op_revision,
> > - svn_path_is_url(pair->src),
> > - TRUE);
> > + SVN_ERR(svn_opt_resolve_revisions(&pair->src_peg_revision,
> > + &pair->src_op_revision,
> > + svn_path_is_url(pair->src),
> > + TRUE,
> > + pool));
> >
> > pair->dst = dst_path_in;
> > APR_ARRAY_PUSH(copy_pairs, svn_client__copy_pair_t *) = pair;
> >
> > Modified: trunk/subversion/libsvn_client/ra.c
> > URL: http://svn.collab.net/viewvc/svn/trunk/subversion/libsvn_client/ra.c?pathrev=23454&r1=23453&r2=23454
> > ==============================================================================
> > --- trunk/subversion/libsvn_client/ra.c (original)
> > +++ trunk/subversion/libsvn_client/ra.c Wed Feb 21 08:49:45 2007
> > @@ -886,9 +886,10 @@
> >
> > start_rev = *revision;
> > peg_revision = *peg_revision_p;
> > - svn_opt_resolve_revisions(&peg_revision, &start_rev,
> > - svn_path_is_url(path_or_url),
> > - TRUE);
> > + SVN_ERR(svn_opt_resolve_revisions(&peg_revision, &start_rev,
> > + svn_path_is_url(path_or_url),
> > + TRUE,
> > + pool));
> >
> > SVN_ERR(svn_client__open_ra_session_internal(&ra_session, initial_url,
> > NULL, NULL, NULL,
> >
> > Modified: trunk/subversion/libsvn_subr/opt.c
> > URL: http://svn.collab.net/viewvc/svn/trunk/subversion/libsvn_subr/opt.c?pathrev=23454&r1=23453&r2=23454
> > ==============================================================================
> > --- trunk/subversion/libsvn_subr/opt.c (original)
> > +++ trunk/subversion/libsvn_subr/opt.c Wed Feb 21 08:49:45 2007
> > @@ -610,11 +610,12 @@
> > }
> >
> >
> > -void
> > +svn_error_t *
> > svn_opt_resolve_revisions(svn_opt_revision_t *peg_rev,
> > svn_opt_revision_t *op_rev,
> > svn_boolean_t is_url,
> > - svn_boolean_t notice_local_mods)
> > + svn_boolean_t notice_local_mods,
> > + apr_pool_t *pool)
> > {
> > if (peg_rev->kind == svn_opt_revision_unspecified)
> > {
> > @@ -634,7 +635,7 @@
> > if (op_rev->kind == svn_opt_revision_unspecified)
> > *op_rev = *peg_rev;
> >
> > - return;
> > + return SVN_NO_ERROR;
> > }

  • application/pgp-signature attachment: stored
Received on Wed Feb 21 18:39:39 2007

This is an archived mail posted to the Subversion Dev mailing list.