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

Re: Crash with 'svn st -u' and Version 1.3 (1.3.x branch)

From: Daniel Rall <dlr_at_finemaltcoding.com>
Date: 2005-10-18 19:43:41 CEST

On Tue, 18 Oct 2005, Philip Martin wrote:

> Daniel Rall <dlr@finemaltcoding.com> writes:
...
> No comments on the patch, but I have difficulty understanding the doc
> string for svn_wc_status2_t:
>
> * When the working copy item is out of date compared to the
> * repository, the following fields represent the state of the
> * youngest revision of the item in the repository. If not out of
> * date, the fields are set as described below.
 
I've adjusted the second sentence in an attempt to clarify its subject
(see patch below). Does that help?

> That appears to state that the fields are valid when the wc is out of
> date, but then this:
>
> /** Set to the user name of the youngest commit, or @c NULL if out
> * of date.
> * @since New in 1.3
> */
> const char *ood_last_cmt_author;
>
> states that the value is NULL when out of date.
>
> Is this field NULL when the wc is out of date, or NULL when the wc is
> *not* out of date?

UGGHH, thanks Philip. You're correct; the doc string is wrong.
 
> Is the caller expected to check for NULL to determine whether the
> field is out of date?

Or possibly, *not* out of date. ;-P

> Does your patch change the behaviour, i.e. it's now NULL for some
> other reason?

No, the behavior should be identical; the field is initialized to NULL,
indicating that it is *not* out of date.

--- svn_wc.h (revision 16782)
+++ svn_wc.h (working copy)
@@ -1581,29 +1581,30 @@
    *
    * When the working copy item is out of date compared to the
    * repository, the following fields represent the state of the
- * youngest revision of the item in the repository. If not out of
- * date, the fields are set as described below.
+ * youngest revision of the item in the repository. If the working
+ * copy is not out of date, the fields are initialized as described
+ * below.
    */
 
   /** Set to the youngest committed revision, or @c SVN_INVALID_REVNUM
- * if out of date.
+ * if not out of date.
    * @since New in 1.3
    */
   svn_revnum_t ood_last_cmt_rev;
 
- /** Set to the most recent commit date, or @c 0 if out of date.
+ /** Set to the most recent commit date, or @c 0 if not out of date.
    * @since New in 1.3
    */
   apr_time_t ood_last_cmt_date;
 
   /** Set to the node kind of the youngest commit, or @c
- * svn_wc_status_none if out of date.
+ * svn_wc_status_none if not out of date.
    * @since New in 1.3
    */
   svn_node_kind_t ood_kind;
 
- /** Set to the user name of the youngest commit, or @c NULL if out
- * of date.
+ /** Set to the user name of the youngest commit, or @c NULL if not
+ * out of date.
    * @since New in 1.3
    */
   const char *ood_last_cmt_author;

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Tue Oct 18 19:43:32 2005

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.