{"thread":{"id":"61192","subject":"[PATCH] midx: use strvec_pushf() for pack-objects base name","startedAt":"2024-03-24T16:40:02Z","lastAt":"2024-03-25T07:38:45Z","messageCount":2,"participants":["René Scharfe","Patrick Steinhardt"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"491362","messageId":"9483038c-9529-4243-9b9a-97254fac29c1@web.de","threadId":"61192","inReplyTo":null,"subject":"[PATCH] midx: use strvec_pushf() for pack-objects base name","fromName":"René Scharfe","fromEmail":"l.s.r@web.de","sentAt":"2024-03-24T16:40:00Z","receivedAt":"2024-03-24T16:40:02Z","isPatch":true,"sender":{"key":"l.s.r@web.de","avatar":"https://avatars.githubusercontent.com/u/26122331?v=4"},"body":"Build the pack base name argument directly using strvec_pushf() instead\nof with an intermediate strbuf.  This is shorter, simpler and avoids the\nneed for explicit cleanup.\n\nSigned-off-by: René Scharfe <l.s.r@web.de>\n---\n midx.c | 7 +------\n 1 file changed, 1 insertion(+), 6 deletions(-)\n\ndiff --git a/midx.c b/midx.c\nindex 85e1c2cd12..41521e019c 100644\n--- a/midx.c\n+++ b/midx.c\n@@ -2163,7 +2163,6 @@ int midx_repack(struct repository *r, const char *object_dir, size_t batch_size,\n \tunsigned char *include_pack;\n \tstruct child_process cmd = CHILD_PROCESS_INIT;\n \tFILE *cmd_in;\n-\tstruct strbuf base_name = STRBUF_INIT;\n \tstruct multi_pack_index *m = lookup_multi_pack_index(r, object_dir);\n\n \t/*\n@@ -2190,9 +2189,7 @@ int midx_repack(struct repository *r, const char *object_dir, size_t batch_size,\n\n \tstrvec_push(&cmd.args, \"pack-objects\");\n\n-\tstrbuf_addstr(&base_name, object_dir);\n-\tstrbuf_addstr(&base_name, \"/pack/pack\");\n-\tstrvec_push(&cmd.args, base_name.buf);\n+\tstrvec_pushf(&cmd.args, \"%s/pack/pack\", object_dir);\n\n \tif (delta_base_offset)\n \t\tstrvec_push(&cmd.args, \"--delta-base-offset\");\n@@ -2204,8 +2201,6 @@ int midx_repack(struct repository *r, const char *object_dir, size_t batch_size,\n \telse\n \t\tstrvec_push(&cmd.args, \"-q\");\n\n-\tstrbuf_release(&base_name);\n-\n \tcmd.git_cmd = 1;\n \tcmd.in = cmd.out = -1;\n\n--\n2.44.0\n"},{"id":"491399","messageId":"ZgEqASsDnaovUV0T@tanuki","threadId":"61192","inReplyTo":"9483038c-9529-4243-9b9a-97254fac29c1@web.de","subject":"Re: [PATCH] midx: use strvec_pushf() for pack-objects base name","fromName":"Patrick Steinhardt","fromEmail":"ps@pks.im","sentAt":"2024-03-25T07:38:41Z","receivedAt":"2024-03-25T07:38:45Z","isPatch":true,"sender":{"key":"ps@pks.im","avatar":"https://avatars.githubusercontent.com/u/4056630?v=4"},"body":"On Sun, Mar 24, 2024 at 05:40:00PM +0100, René Scharfe wrote:\n> Build the pack base name argument directly using strvec_pushf() instead\n> of with an intermediate strbuf.  This is shorter, simpler and avoids the\n> need for explicit cleanup.\n> \n> Signed-off-by: René Scharfe <l.s.r@web.de>\n\nThis patch looks obviously good to me, so please feel free to add my\nReviewed-by. Thanks!\n\nPatrick\n\n> ---\n>  midx.c | 7 +------\n>  1 file changed, 1 insertion(+), 6 deletions(-)\n> \n> diff --git a/midx.c b/midx.c\n> index 85e1c2cd12..41521e019c 100644\n> --- a/midx.c\n> +++ b/midx.c\n> @@ -2163,7 +2163,6 @@ int midx_repack(struct repository *r, const char *object_dir, size_t batch_size,\n>  \tunsigned char *include_pack;\n>  \tstruct child_process cmd = CHILD_PROCESS_INIT;\n>  \tFILE *cmd_in;\n> -\tstruct strbuf base_name = STRBUF_INIT;\n>  \tstruct multi_pack_index *m = lookup_multi_pack_index(r, object_dir);\n> \n>  \t/*\n> @@ -2190,9 +2189,7 @@ int midx_repack(struct repository *r, const char *object_dir, size_t batch_size,\n> \n>  \tstrvec_push(&cmd.args, \"pack-objects\");\n> \n> -\tstrbuf_addstr(&base_name, object_dir);\n> -\tstrbuf_addstr(&base_name, \"/pack/pack\");\n> -\tstrvec_push(&cmd.args, base_name.buf);\n> +\tstrvec_pushf(&cmd.args, \"%s/pack/pack\", object_dir);\n> \n>  \tif (delta_base_offset)\n>  \t\tstrvec_push(&cmd.args, \"--delta-base-offset\");\n> @@ -2204,8 +2201,6 @@ int midx_repack(struct repository *r, const char *object_dir, size_t batch_size,\n>  \telse\n>  \t\tstrvec_push(&cmd.args, \"-q\");\n> \n> -\tstrbuf_release(&base_name);\n> -\n>  \tcmd.git_cmd = 1;\n>  \tcmd.in = cmd.out = -1;\n> \n> --\n> 2.44.0\n> \n"}]}