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

Re: [PATCH] Human representation date format change

From: Karl Fogel <kfogel_at_newton.ch.collab.net>
Date: 2002-07-15 22:14:28 CEST

Nuutti Kotivuori <naked@iki.fi> writes:
> + * This format is used whenever time is shown to the user. It consists
> + * of a machine parseable, almost ISO-8601, part in the beginning -
> + * and a human explanative part at the end. The machine parseable part

I never heard of the word "explanative" before, but hey, English is a
Big Tent language.

> + * is generated strictly by APR and our code, with a apr_snprintf. The
> + * human explanative part is generated by apr_strftime, which means
> + * that it's generation can be affected by locale, it can fail and it

s/it's/its/

> +/* Maximum length for the date string. */
> +#define SVN_SUBR__DATE_MAX_LENGTH 80

SVN_TIME__MAX_LENGTH, maybe? Should use "SVN_TIME__" prefix, anyway.

> + /* Put in machine parseable part */
> + len = apr_snprintf (datestr,
> + SVN_SUBR__DATE_MAX_LENGTH,
> + human_timestamp_format,
> + exploded_time.tm_year + 1900,
> + exploded_time.tm_mon + 1,
> + exploded_time.tm_mday,
> + exploded_time.tm_hour,
> + exploded_time.tm_min,
> + exploded_time.tm_sec,
> + exploded_time.tm_gmtoff / (60 * 60),
> + (exploded_time.tm_gmtoff / 60) % 60);
> +
> + /* If we overfilled the buffer, just return what we got. */
> + if(len >= SVN_SUBR__DATE_MAX_LENGTH)
> + return datestr;

I got confused for a moment, but then learned that apr_snprintf()
returns the buffer's len (i.e., its second arg) in overfill case.
So ">=" is okay, but equivalent to "==", right?

> + /* Calculate offset to the end of the machine parseable part. */
> + curptr = datestr + len;
> +
> + /* Put in human readable part */
> + ret = apr_strftime (curptr,
> + &retlen,
> + SVN_SUBR__DATE_MAX_LENGTH - len,
> + human_timestamp_format_suffix,
> + &exploded_time);

Okay, so in case of overlong length, we sacrifice the user-formatted
part in favor of the machine-parseable part. That seems reasonable.

+1. If this passes "make check", commit it.

-K

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Mon Jul 15 22:26:33 2002

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.