You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Hyrum K Wright <hy...@hyrumwright.org> on 2012/10/10 19:46:28 UTC
Re: svn commit: r1390438 - in /subversion/trunk: ./
subversion/include/private/ subversion/libsvn_ra_svn/ subversion/libsvn_subr/
tools/client-side/svn-bench/ tools/dist/
On Wed, Sep 26, 2012 at 8:39 AM, <st...@apache.org> wrote:
> Author: stefan2
> Date: Wed Sep 26 12:38:59 2012
> New Revision: 1390438
>
> URL: http://svn.apache.org/viewvc?rev=1390438&view=rev
> Log:
> Merge second batch of changes from the 10Gb branch. These add the
> svn-bench tool.
...
> Modified: subversion/trunk/subversion/libsvn_subr/string.c
> URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/string.c?rev=1390438&r1=1390437&r2=1390438&view=diff
> ==============================================================================
> --- subversion/trunk/subversion/libsvn_subr/string.c (original)
> +++ subversion/trunk/subversion/libsvn_subr/string.c Wed Sep 26 12:38:59 2012
> @@ -1093,3 +1093,44 @@ svn__i64toa(char * dest, apr_int64_t num
> *dest = '-';
> return svn__ui64toa(dest + 1, (apr_uint64_t)(0-number)) + 1;
> }
> +
> +static void
> +ui64toa_sep(apr_uint64_t number, char seperator, char *buffer)
> +{
> + apr_size_t length = svn__ui64toa(buffer, number);
> + apr_size_t i;
> +
> + for (i = length; i > 3; i -= 3)
> + {
> + memmove(&buffer[i - 2], &buffer[i - 3], length - i + 3);
> + buffer[i-3] = seperator;
> + length++;
> + }
> +
> + buffer[length] = 0;
> +}
> +
> +char *
> +svn__ui64toa_sep(apr_uint64_t number, char seperator, apr_pool_t *pool)
> +{
> + char buffer[2 * SVN_INT64_BUFFER_SIZE];
> + ui64toa_sep(number, seperator, buffer);
> +
> + return apr_pstrdup(pool, buffer);
> +}
> +
> +char *
> +svn__i64toa_sep(apr_uint64_t number, char seperator, apr_pool_t *pool)
This function name looks like it takes a signed integer, but the
actual argument type is an unsigned int...
> +{
> + char buffer[2 * SVN_INT64_BUFFER_SIZE];
> + if (number < 0)
...which means this conditional will never evaluate as true.
> + {
> + buffer[0] = '-';
> + ui64toa_sep((apr_uint64_t)(-number), seperator, &buffer[1]);
> + }
> + else
> + ui64toa_sep((apr_uint64_t)(number), seperator, buffer);
> +
> + return apr_pstrdup(pool, buffer);
> +}
...
-Hyrum
Re: svn commit: r1390438 - in /subversion/trunk: ./
subversion/include/private/ subversion/libsvn_ra_svn/ subversion/libsvn_subr/
tools/client-side/svn-bench/ tools/dist/
Posted by Hyrum K Wright <hy...@hyrumwright.org>.
On Wed, Oct 10, 2012 at 1:46 PM, Hyrum K Wright <hy...@hyrumwright.org> wrote:
> On Wed, Sep 26, 2012 at 8:39 AM, <st...@apache.org> wrote:
>> Author: stefan2
>> Date: Wed Sep 26 12:38:59 2012
>> New Revision: 1390438
>>
>> URL: http://svn.apache.org/viewvc?rev=1390438&view=rev
>> Log:
>> Merge second batch of changes from the 10Gb branch. These add the
>> svn-bench tool.
> ...
>> Modified: subversion/trunk/subversion/libsvn_subr/string.c
>> URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/string.c?rev=1390438&r1=1390437&r2=1390438&view=diff
>> ==============================================================================
>> --- subversion/trunk/subversion/libsvn_subr/string.c (original)
>> +++ subversion/trunk/subversion/libsvn_subr/string.c Wed Sep 26 12:38:59 2012
>> @@ -1093,3 +1093,44 @@ svn__i64toa(char * dest, apr_int64_t num
>> *dest = '-';
>> return svn__ui64toa(dest + 1, (apr_uint64_t)(0-number)) + 1;
>> }
>> +
>> +static void
>> +ui64toa_sep(apr_uint64_t number, char seperator, char *buffer)
>> +{
>> + apr_size_t length = svn__ui64toa(buffer, number);
>> + apr_size_t i;
>> +
>> + for (i = length; i > 3; i -= 3)
>> + {
>> + memmove(&buffer[i - 2], &buffer[i - 3], length - i + 3);
>> + buffer[i-3] = seperator;
>> + length++;
>> + }
>> +
>> + buffer[length] = 0;
>> +}
>> +
>> +char *
>> +svn__ui64toa_sep(apr_uint64_t number, char seperator, apr_pool_t *pool)
>> +{
>> + char buffer[2 * SVN_INT64_BUFFER_SIZE];
>> + ui64toa_sep(number, seperator, buffer);
>> +
>> + return apr_pstrdup(pool, buffer);
>> +}
>> +
>> +char *
>> +svn__i64toa_sep(apr_uint64_t number, char seperator, apr_pool_t *pool)
>
> This function name looks like it takes a signed integer, but the
> actual argument type is an unsigned int...
>
>> +{
>> + char buffer[2 * SVN_INT64_BUFFER_SIZE];
>> + if (number < 0)
>
> ...which means this conditional will never evaluate as true.
>
>> + {
>> + buffer[0] = '-';
>> + ui64toa_sep((apr_uint64_t)(-number), seperator, &buffer[1]);
>> + }
>> + else
>> + ui64toa_sep((apr_uint64_t)(number), seperator, buffer);
>> +
>> + return apr_pstrdup(pool, buffer);
>> +}
> ...
Talked to Stefan about this in person, and updated in r1397148.
-Hyrum
Re: svn commit: r1390438 - in /subversion/trunk: ./
subversion/include/private/ subversion/libsvn_ra_svn/ subversion/libsvn_subr/
tools/client-side/svn-bench/ tools/dist/
Posted by Hyrum K Wright <hy...@hyrumwright.org>.
On Wed, Oct 10, 2012 at 1:46 PM, Hyrum K Wright <hy...@hyrumwright.org> wrote:
> On Wed, Sep 26, 2012 at 8:39 AM, <st...@apache.org> wrote:
>> Author: stefan2
>> Date: Wed Sep 26 12:38:59 2012
>> New Revision: 1390438
>>
>> URL: http://svn.apache.org/viewvc?rev=1390438&view=rev
>> Log:
>> Merge second batch of changes from the 10Gb branch. These add the
>> svn-bench tool.
> ...
>> Modified: subversion/trunk/subversion/libsvn_subr/string.c
>> URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/string.c?rev=1390438&r1=1390437&r2=1390438&view=diff
>> ==============================================================================
>> --- subversion/trunk/subversion/libsvn_subr/string.c (original)
>> +++ subversion/trunk/subversion/libsvn_subr/string.c Wed Sep 26 12:38:59 2012
>> @@ -1093,3 +1093,44 @@ svn__i64toa(char * dest, apr_int64_t num
>> *dest = '-';
>> return svn__ui64toa(dest + 1, (apr_uint64_t)(0-number)) + 1;
>> }
>> +
>> +static void
>> +ui64toa_sep(apr_uint64_t number, char seperator, char *buffer)
>> +{
>> + apr_size_t length = svn__ui64toa(buffer, number);
>> + apr_size_t i;
>> +
>> + for (i = length; i > 3; i -= 3)
>> + {
>> + memmove(&buffer[i - 2], &buffer[i - 3], length - i + 3);
>> + buffer[i-3] = seperator;
>> + length++;
>> + }
>> +
>> + buffer[length] = 0;
>> +}
>> +
>> +char *
>> +svn__ui64toa_sep(apr_uint64_t number, char seperator, apr_pool_t *pool)
>> +{
>> + char buffer[2 * SVN_INT64_BUFFER_SIZE];
>> + ui64toa_sep(number, seperator, buffer);
>> +
>> + return apr_pstrdup(pool, buffer);
>> +}
>> +
>> +char *
>> +svn__i64toa_sep(apr_uint64_t number, char seperator, apr_pool_t *pool)
>
> This function name looks like it takes a signed integer, but the
> actual argument type is an unsigned int...
>
>> +{
>> + char buffer[2 * SVN_INT64_BUFFER_SIZE];
>> + if (number < 0)
>
> ...which means this conditional will never evaluate as true.
>
>> + {
>> + buffer[0] = '-';
>> + ui64toa_sep((apr_uint64_t)(-number), seperator, &buffer[1]);
>> + }
>> + else
>> + ui64toa_sep((apr_uint64_t)(number), seperator, buffer);
>> +
>> + return apr_pstrdup(pool, buffer);
>> +}
> ...
Talked to Stefan about this in person, and updated in r1397148.
-Hyrum