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

Re: use of commit_items param in svn_client__do_commit()

From: Madan U Sreenivasan <madan_at_collab.net>
Date: 2006-11-27 08:35:28 CET

On Thu, 16 Nov 2006 00:36:58 +0530, C. Michael Pilato
<cmpilato@collab.net> wrote:
[snip]
>
> How do you figure?
>
> static svn_error_t *
> do_item_commit(void **dir_baton,
> void *parent_baton,
> void *callback_baton,
> const char *path,
> apr_pool_t *pool)
> {
> struct path_driver_cb_baton *cb_baton = callback_baton;
> svn_client_commit_item2_t *item = apr_hash_get(cb_baton->commit_items,
> path,
> APR_HASH_KEY_STRING);
> ...
>
> The first thing this function does is get a point to the object in the
> commit_items *hash* (not "array", as you state) that corresponds to the
> path.

I was referring to the commit_items array in svn_client__do_commit()

> From there, that objects members are dereferenced all *over* that
> function.
>
> I think you need to take a closer look at how svn_client__do_commit()
> and do_item_commit() really work. You might be getting confused by the
> fact that cb.commit_items is a hash created from the original
> commit_items array.

You are right, I was a bit confused. On taking another look,
svn_client__do_commit() fills in cb_baton.commit_items is filled with the
hash made from the commit_items array.

This hash is then used all through do_item_commit like you mentioned above.

But the do_item_commit() still ignores item->wcprop_changes member. Is
this intentional?

Am writing a patch to make use of this (for purposes of merge-tracking).
Will have to test if existing tests dont fail over this.

Thanks for the comments, Mike.

Regards,
Madan.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Mon Nov 27 08:06:27 2006

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