From a48d865cd92dde47f85b308537f591bbd6babd0f Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Tue, 11 Feb 2020 18:53:26 +0000 Subject: [PATCH] git-cache-proxy: gc: Break out $gccheck No functional change. Signed-off-by: Ian Jackson --- scripts/git-cache-proxy | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/scripts/git-cache-proxy b/scripts/git-cache-proxy index ec5ff7f..48c397c 100755 --- a/scripts/git-cache-proxy +++ b/scripts/git-cache-proxy @@ -430,18 +430,19 @@ sub housekeeping () { } my ($mode_what,$mode_locknb,$mode_action); if (-M _ <= $treeexpiredays) { - if (!lstat "$gcdone") { - $! == ENOENT or hkfail "$gcdone: lstat: $!"; - logm 'debug', - "housekeeping: subdirs $subdir: touched recently, never gc'd!"; - } elsif (-M _ <= $gcintervaldays) { - logm 'debug', - "housekeeping: subdirs $subdir: touched recently, gc'd recently"; - next; - } else { - logm 'debug', - "housekeeping: subdirs $subdir: touched recently, needs gc"; - } + my $gccheck = sub { + if (!lstat "$gcdone") { + $! == ENOENT or hkfail "$gcdone: lstat: $!"; + return 1, "touched recently, never gc'd!"; + } elsif (-M _ <= $gcintervaldays) { + return 0, "touched recently, gc'd recently"; + } else { + return 1, "touched recently, needs gc"; + } + }; + my ($needsgc, $gcmsg) = $gccheck->(); + logm 'debug', "housekeeping: subdirs $subdir: $gcmsg"; + next unless $needsgc; $mode_what = 'garbage collecting'; $mode_locknb = 0; $mode_action = sub { -- 2.30.2