From: Junio C Hamano Date: Wed, 1 Sep 2010 20:57:23 +0000 (-0700) Subject: Merge branch 'sg/rerere-gc-old-still-used' into maint X-Git-Tag: v1.7.2.3~4 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/c7f649a794250ca680569bd8c2466af42acb434a?hp=--cc Merge branch 'sg/rerere-gc-old-still-used' into maint * sg/rerere-gc-old-still-used: rerere: fix overeager gc mingw_utime(): handle NULL times parameter --- c7f649a794250ca680569bd8c2466af42acb434a diff --cc builtin/rerere.c index 39ad60169d,6d1b5802ad..0c7202eb9e --- a/builtin/rerere.c +++ b/builtin/rerere.c @@@ -53,13 -59,18 +59,18 @@@ static void garbage_collect(struct stri while ((e = readdir(dir))) { if (is_dot_or_dotdot(e->d_name)) continue; - then = rerere_created_at(e->d_name); - if (!then) - continue; - cutoff = (has_rerere_resolution(e->d_name) - ? cutoff_resolve : cutoff_noresolve); + + then = rerere_last_used_at(e->d_name); + if (then) { + cutoff = cutoff_resolve; + } else { + then = rerere_created_at(e->d_name); + if (!then) + continue; + cutoff = cutoff_noresolve; + } if (then < now - cutoff * 86400) - string_list_append(e->d_name, &to_remove); + string_list_append(&to_remove, e->d_name); } for (i = 0; i < to_remove.nr; i++) unlink_rr_item(to_remove.items[i].string);