On Sun, Jun 15, 2008 at 10:47:51PM +0000, Junio C Hamano wrote:
Pierre Habouzit [off-list ref] writes:
quoted
Signed-off-by: Pierre Habouzit <redacted>
---
builtin-reflog.c | 1 +
t/t1301-shared-repo.sh | 15 +++++++++++++++
2 files changed, 16 insertions(+), 0 deletions(-)
Some people like to have logAllRefUpdates even for bare repositories, and if
shared, git-gc breaks them.
diff --git a/builtin-reflog.c b/builtin-reflog.c
index 897d1dc..430929f 100644
--- a/builtin-reflog.c
+++ b/builtin-reflog.c
@@ -308,6 +308,7 @@ static int expire_reflog(const char *ref, const unsigned char *sha1, int unused,
} else if (cmd->updateref && commit_ref(lock)) {
status |= error("Couldn't set %s", lock->ref_name);
}
+ adjust_shared_perm(log_file);
Why is it sane to do this unconditionally, instead of putting in another
else or something?
Huh indeed, the proper patch should have been:
- }
+ } else {
+ adjust_shared_perm(log_file);
+ }
It was inattention on my end, I focused more on writing a test case
than on the one liner fix. Sorry.
--
·O· Pierre Habouzit
··O madcoder@debian.org
OOO http://www.madism.org