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

Re: Issue #4467 - blame youngest to oldest needs to handle SVN_INVALID_REVNUM - 1.9 blocker?

From: Branko Čibej <brane_at_wandisco.com>
Date: Wed, 18 Feb 2015 01:57:03 +0100

On 18.02.2015 01:10, Daniel Shahaf wrote:
> Julian Foad wrote on Tue, Feb 17, 2015 at 16:26:54 +0000:
>> This issue looks like one that we should fix for 1.9.
>>
>> [[[
>> Several of the blame functions don't work properly when start=HEAD and end=N
>> because they compare start and end to work out whether start is less than or
>> greater than end. At least these functions need attention:
>>
>> svn_client_blame5 gets younger_rev wrong
>> svn_ra_get_file_revs2 gets the capability check wrong
>> svn_ra_serf__get_file_revs gets the peg_rev wrong
>>
>> See also r1568872 which fixed a similar problem with log.
>> ]]]
>>
> Stupid question: can't we just redefine svn_revnum_t as unsigned long,
> so that SVN_INVALID_REVNUM becomes ULONG_MAX, and all these comparisons
> — in all codepaths, not just reverse blame — start DTRTing?

svn_revnum_t is part of our public API. No, we can't change it.

-- Brane
Received on 2015-02-18 01:58:21 CET

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