Subject: [PATCH v2] bundle-uri: send debug output to given FILE * stream

From: "Jan Mazur via GitGitGadget" <[email-masked]>
Date: Wed, 04 Jun 2025 17:11:21 +0000

From: Jan Mazur <[email-masked]>

d796cedb (bundle-uri: unit test "key=value" parsing, 2022-10-12)
introduced the print_bundle_list() function, which takes a "FILE
*fp" to write the output to.  Later with c93c3d2f (bundle-uri:
parse bundle.heuristic=creationToken, 2023-01-31) the function
started showing additional information, which is always written
to the standard output stream.

It does not look like a deliberate decision to do so, and it
does not hurt, as all callers of the function passes stdout to
it.

We could change the function not to take fp and always write to
the standard output to simplify, but let's use the FILE *fp
provided by the caller consistently to write out output.

Signed-off-by: Jan Mazur <[email-masked]>
---
    bundle-uri: send debug output to given FILE * stream
    
    Small fix to bundle-uri convenience debug function.

Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1985%2Fmzr%2Fbundle_uri__print_bundle_list_fix-v2
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1985/mzr/bundle_uri__print_bundle_list_fix-v2
Pull-Request: https://github.com/git/git/pull/1985

Range-diff vs v1:

 1:  83cbf182253 ! 1:  38f05164811 bundle-uri: replace printf with fprintf in print_bundle_uri function
     @@ Metadata
      Author: Jan Mazur <[email-masked]>
      
       ## Commit message ##
     -    bundle-uri: replace printf with fprintf in print_bundle_uri function
     +    bundle-uri: send debug output to given FILE * stream
     +
     +    d796cedb (bundle-uri: unit test "key=value" parsing, 2022-10-12)
     +    introduced the print_bundle_list() function, which takes a "FILE
     +    *fp" to write the output to.  Later with c93c3d2f (bundle-uri:
     +    parse bundle.heuristic=creationToken, 2023-01-31) the function
     +    started showing additional information, which is always written
     +    to the standard output stream.
     +
     +    It does not look like a deliberate decision to do so, and it
     +    does not hurt, as all callers of the function passes stdout to
     +    it.
     +
     +    We could change the function not to take fp and always write to
     +    the standard output to simplify, but let's use the FILE *fp
     +    provided by the caller consistently to write out output.
      
          Signed-off-by: Jan Mazur <[email-masked]>

 bundle-uri.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/bundle-uri.c b/bundle-uri.c
index 9accf157b44..c9d65aa0ce8 100644
--- a/bundle-uri.c
+++ b/bundle-uri.c
@@ -122,7 +122,7 @@ void print_bundle_list(FILE *fp, struct bundle_list *list)
 		int i;
 		for (i = 0; i < BUNDLE_HEURISTIC__COUNT; i++) {
 			if (heuristics[i].heuristic == list->heuristic) {
-				printf("\theuristic = %s\n",
+				fprintf(fp, "\theuristic = %s\n",
 				       heuristics[list->heuristic].name);
 				break;
 			}

base-commit: b07857f7dcffee4d3b428df8dce6c9b49a57c9c1
-- 
gitgitgadget