diff mbox series

gc: simplify maintenance_task_pack_refs()

Message ID ab33f72e-d552-7bd7-bf04-3c476d32b5b6@web.de (mailing list archive)
State New, archived
Headers show
Series gc: simplify maintenance_task_pack_refs() | expand

Commit Message

René Scharfe Oct. 4, 2022, 4:17 p.m. UTC
Pass a constant string array directly to run_command_v_opt() instead of
copying it into a strvec first.  This shortens the code and avoids heap
allocations.

Signed-off-by: René Scharfe <l.s.r@web.de>
---
This patch is a bit silly because it doesn't actually fix anything, but
I can't resist pointing out the possible code size reduction.  And if
opts becomes used eventually it's probably easier to use the args member
of struct child_process instead of supplying our own strvec.

 builtin/gc.c | 11 ++---------
 1 file changed, 2 insertions(+), 9 deletions(-)

--
2.37.3
diff mbox series

Patch

diff --git a/builtin/gc.c b/builtin/gc.c
index 2753bd15a5..ceff31ea00 100644
--- a/builtin/gc.c
+++ b/builtin/gc.c
@@ -167,16 +167,9 @@  static void gc_config(void)
 struct maintenance_run_opts;
 static int maintenance_task_pack_refs(MAYBE_UNUSED struct maintenance_run_opts *opts)
 {
-	struct strvec pack_refs_cmd = STRVEC_INIT;
-	int ret;
+	const char *argv[] = { "pack-refs", "--all", "--prune", NULL };

-	strvec_pushl(&pack_refs_cmd, "pack-refs", "--all", "--prune", NULL);
-
-	ret = run_command_v_opt(pack_refs_cmd.v, RUN_GIT_CMD);
-
-	strvec_clear(&pack_refs_cmd);
-
-	return ret;
+	return run_command_v_opt(argv, RUN_GIT_CMD);
 }

 static int too_many_loose_objects(void)