summaryrefslogtreecommitdiff
path: root/builtin-gc.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2007-09-17 07:37:06 (GMT)
committerJunio C Hamano <gitster@pobox.com>2007-09-18 06:12:15 (GMT)
commitcaf9de2f46471dc25180bf519c07537c00a68dda (patch)
tree7717cb3e0c073a671af521e5f867f87a731f693b /builtin-gc.c
parent65aa53029a32a1ad36523f3e7a1bb933d4494805 (diff)
downloadgit-caf9de2f46471dc25180bf519c07537c00a68dda.zip
git-caf9de2f46471dc25180bf519c07537c00a68dda.tar.gz
git-caf9de2f46471dc25180bf519c07537c00a68dda.tar.bz2
git-gc --auto: move threshold check to need_to_gc() function.
That is where we decide if we are going to run gc automatically. Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin-gc.c')
-rw-r--r--builtin-gc.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/builtin-gc.c b/builtin-gc.c
index 093b3dd..f046a2a 100644
--- a/builtin-gc.c
+++ b/builtin-gc.c
@@ -80,6 +80,13 @@ static int need_to_gc(void)
int num_loose = 0;
int needed = 0;
+ /*
+ * Setting gc.auto to 0 or negative can disable the
+ * automatic gc
+ */
+ if (gc_auto_threshold <= 0)
+ return 0;
+
if (sizeof(path) <= snprintf(path, sizeof(path), "%s/17", objdir)) {
warning("insanely long object directory %.*s", 50, objdir);
return 0;
@@ -129,8 +136,6 @@ int cmd_gc(int argc, const char **argv, const char *prefix)
continue;
}
if (!strcmp(arg, "--auto")) {
- if (gc_auto_threshold <= 0)
- return 0;
auto_gc = 1;
continue;
}