On Wed, Jun 16, 2010 at 3:58 PM, Julian Foad <julian.f...@wandisco.com> wrote: > Johan Corveleyn wrote: >> On Wed, Jun 16, 2010 at 1:11 PM, Julian Foad <julian.f...@wandisco.com> >> wrote: >> > Note that the caller can request a blame where the "end" revision is the >> > "WORKING" pseudo-revision, so be careful not to confuse the reader when >> > documenting this new "end revision number" parameter which is a revision >> > number as determined from the repository and which will not include the >> > "WORKING" pseudo-revision. (Maybe we should also pass a parameter that >> > provides this information: "svn_boolean_t >> > range_includes_working_version"?) [...] > On the other hand, this is information that the client already knows and > can pass via the "baton", so it doesn't need to be passed through a > separate argument to this callback.
Ah, yes indeed. In fact it's already passed via the baton (at least in blame-cmd's case). Inside svn_cl__blame, the blame_baton_t gets a reference to the opt_state. And then there is the following piece of code, right before svn_client_blame5 is called: [[[ if (end_revision_unspecified) { if (peg_revision.kind != svn_opt_revision_unspecified) opt_state->end_revision = peg_revision; else if (svn_path_is_url(target)) opt_state->end_revision.kind = svn_opt_revision_head; else opt_state->end_revision.kind = svn_opt_revision_working; } ]]] So I guess that should be ok. Cheers, -- Johan