On Tue, Jun 15, 2010 at 4:36 PM, Philip Martin
> Johan Corveleyn <jcorvel_at_gmail.com> writes:
>> 1) To do this, the blame_receiver callback needs to know the
>> end_revnum. So I need to extend svn_client_blame_receiver3_t to
>> include end_revnum as a parameter, right (so it can be passed to the
>> receiver inside svn_client_blame5 (blame.c))?
> Not sure. Does end_revnum correspond to the end parameter passed to
Only if the user specifies an end revnum explicitly. Otherwise the end
parameter refers to HEAD or WORKING (depending on whether the target
is a url or a path). So in general the caller doesn't know the exact
end_revnum, and it's only retrieved in svn_client_blame5 (when it
calls "svn_client__ra_session_from_path(&ra_session, &end_revnum,
> If so then it is probably the callers
> responsibility to put it into receiver_baton, and it doesn't have to
> appear in svn_client_blame_receiver3_t.
>> 2) Since svn_client_blame_receiver3_t was introduced in 1.7 (according
>> to the comment), can I just change it, or do I still have to introduce
>> a svn_client_blame_receiver4_t for backward compat?
> svn_client_blame_receiver3_t can be changed.
Ok, I guess I'll have to do that then.
>> 3) Do I add the end_revnum parameter at the end of the parameter list,
>> just before the *pool?
> We generally put outputs before inputs with pools last; there is no
> requirement that new function parameters go at the end.
Received on 2010-06-15 21:09:51 CEST