On Tue, Nov 06, 2001 at 10:01:28AM -0600, Karl Fogel wrote:
> While reviewing Philip Martin's recent patch to svn_client_propget(),
> I got a closer look at some of our recent property changes. The doc
> string for svn_client_propget() left me a little lost as to the
> precise form of the return-by-reference.
>
> Eventually I was able to determine that it's using
> `apr_table_entry_t'. But that's bad: it forces the property value to
> be a `char *', meaning no prop values with nulls in them. We decided
> long ago that property *names* didn't have to support binary strings,
> but property values are Anything Goes.
>
I wasn't aware of that, and indeed was comtemplating using either a table
or a hash.
>
> Kevin Pilch-Bisson, I think this was your commit 290? Can you fix it
> please? Suggest returning them in a hash, where the keys are `char *'
> propnames and the values are `svn_string_t *'.
>
No problem, especially since it seems my network is working again.
> Thanks,
> -K
>
> /* Returns an apr_table_t of filenames and property values, in *PROPS,
> allocated in POOL. If TARGET is a file or RECURSE is false, there will
> be only a single element, with key TARGET, and value the value of PROPNAME
> in TARGET. If recurse is true and TARGET is a directory, the *PROPS will
> contain a list of node names and property values for TARGET and all of
> its children. The nodenames will be of rooted from the same place as
> TARGET. */
Thinking of a doc-string along the following lines:
/* Returns an apr_hash_t where the key is a char * representing the path
from the pwd to the node on which property PROPNAME is set, and the key
is the value of PROPNAME on that node. If TARGET is a file or RECURSE is
false, there will be only a single element in *PROPS, with key TARGET->data.
*/
Comments?
I thought of having a hash of hashes (or table of hashes), similar to proplist,
but thought this would be redundant, since we are only getting a single
property.
> svn_error_t *
> svn_client_propget (apr_table_t **props,
> svn_stringbuf_t *propname,
> svn_stringbuf_t *target,
> svn_boolean_t recurse,
> apr_pool_t *pool);
>
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Kevin Pilch-Bisson http://www.pilch-bisson.net
"Historically speaking, the presences of wheels in Unix
has never precluded their reinvention." - Larry Wall
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- application/pgp-signature attachment: stored
Received on Sat Oct 21 14:36:48 2006