Author: julianfoad
Date: Mon Jan 14 15:23:56 2019
New Revision: 1851268

URL: http://svn.apache.org/viewvc?rev=1851268&view=rev
Log:
Move misplaced parameters out of the blame callback.

Part 2 of a commit started in r1851265.

* subversion/include/svn_client.h,
  subversion/libsvn_client/blame.c
  (svn_client_blame6): Move the start/end parameters from
    svn_client_blame_receiver4_t to svn_client_blame6().

* subversion/libsvn_client/deprecated.c
  (blame_receiver_wrapper_baton3,
   blame_wrapper_receiver3,
   svn_client_blame5): Adjust the compatibility wrapper.

Modified:
    subversion/trunk/subversion/include/svn_client.h
    subversion/trunk/subversion/libsvn_client/blame.c
    subversion/trunk/subversion/libsvn_client/deprecated.c

Modified: subversion/trunk/subversion/include/svn_client.h
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/include/svn_client.h?rev=1851268&r1=1851267&r2=1851268&view=diff
==============================================================================
--- subversion/trunk/subversion/include/svn_client.h (original)
+++ subversion/trunk/subversion/include/svn_client.h Mon Jan 14 15:23:56 2019
@@ -780,8 +780,6 @@ typedef svn_error_t *(*svn_client_get_co
  */
 typedef svn_error_t *(*svn_client_blame_receiver4_t)(
   void *baton,
-  svn_revnum_t start_revnum,
-  svn_revnum_t end_revnum,
   apr_int64_t line_no,
   svn_revnum_t revision,
   apr_hash_t *rev_props,
@@ -2975,6 +2973,8 @@ svn_client_blame6(const char *path_or_ur
                   const svn_opt_revision_t *peg_revision,
                   const svn_opt_revision_t *start,
                   const svn_opt_revision_t *end,
+                  svn_revnum_t *start_revnum_p,
+                  svn_revnum_t *end_revnum_p,
                   const svn_diff_file_options_t *diff_options,
                   svn_boolean_t ignore_mime_type,
                   svn_boolean_t include_merged_revisions,

Modified: subversion/trunk/subversion/libsvn_client/blame.c
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_client/blame.c?rev=1851268&r1=1851267&r2=1851268&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_client/blame.c (original)
+++ subversion/trunk/subversion/libsvn_client/blame.c Mon Jan 14 15:23:56 2019
@@ -660,6 +660,8 @@ svn_client_blame6(const char *target,
                   const svn_opt_revision_t *peg_revision,
                   const svn_opt_revision_t *start,
                   const svn_opt_revision_t *end,
+                  svn_revnum_t *start_revnum_p,
+                  svn_revnum_t *end_revnum_p,
                   const svn_diff_file_options_t *diff_options,
                   svn_boolean_t ignore_mime_type,
                   svn_boolean_t include_merged_revisions,
@@ -696,10 +698,13 @@ svn_client_blame6(const char *target,
   SVN_ERR(svn_client__get_revision_number(&start_revnum, NULL, ctx->wc_ctx,
                                           target_abspath_or_url, ra_session,
                                           start, pool));
-
+  if (start_revnum_p)
+    *start_revnum_p = start_revnum;
   SVN_ERR(svn_client__get_revision_number(&end_revnum, NULL, ctx->wc_ctx,
                                           target_abspath_or_url, ra_session,
                                           end, pool));
+  if (end_revnum_p)
+    *end_revnum_p = end_revnum;
 
   {
     svn_client__pathrev_t *loc;
@@ -945,13 +950,13 @@ svn_client_blame6(const char *target,
               line.data = sb->data;
               line.len = sb->len;
               if (walk->rev)
-                SVN_ERR(receiver(receiver_baton, start_revnum, end_revnum,
+                SVN_ERR(receiver(receiver_baton,
                                  line_no, walk->rev->revision,
                                  walk->rev->rev_props, merged_rev,
                                  merged_rev_props, merged_path,
                                  &line, FALSE, iterpool));
               else
-                SVN_ERR(receiver(receiver_baton, start_revnum, end_revnum,
+                SVN_ERR(receiver(receiver_baton,
                                  line_no, SVN_INVALID_REVNUM,
                                  NULL, SVN_INVALID_REVNUM,
                                  NULL, NULL,

Modified: subversion/trunk/subversion/libsvn_client/deprecated.c
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_client/deprecated.c?rev=1851268&r1=1851267&r2=1851268&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_client/deprecated.c (original)
+++ subversion/trunk/subversion/libsvn_client/deprecated.c Mon Jan 14 15:23:56 
2019
@@ -169,12 +169,12 @@ svn_client_mkdir(svn_client_commit_info_
 struct blame_receiver_wrapper_baton3 {
   void *baton;
   svn_client_blame_receiver3_t receiver;
+  svn_revnum_t start_revnum;
+  svn_revnum_t end_revnum;
 };
 
 static svn_error_t *
 blame_wrapper_receiver3(void *baton,
-   svn_revnum_t start_revnum,
-   svn_revnum_t end_revnum,
    apr_int64_t line_no,
    svn_revnum_t revision,
    apr_hash_t *rev_props,
@@ -188,7 +188,8 @@ blame_wrapper_receiver3(void *baton,
   struct blame_receiver_wrapper_baton3 *brwb = baton;
 
   if (brwb->receiver)
-    return brwb->receiver(brwb->baton, start_revnum, end_revnum, line_no,
+    return brwb->receiver(brwb->baton, brwb->start_revnum, brwb->end_revnum,
+                          line_no,
                           revision, rev_props, merged_revision,
                           merged_rev_props, merged_path, line->data,
                           local_change, pool);
@@ -214,7 +215,9 @@ svn_client_blame5(const char *target,
   baton.receiver = receiver;
   baton.baton = receiver_baton;
 
-  return svn_client_blame6(target, peg_revision, start, end, diff_options,
+  return svn_client_blame6(target, peg_revision, start, end,
+                           &baton.start_revnum, &baton.end_revnum,
+                           diff_options,
                            ignore_mime_type, include_merged_revisions,
                            blame_wrapper_receiver3, &baton, ctx, pool);
 }


Reply via email to