Re: [PATCH v3 4/7] refs: Break out check for reflog autocreation
From: Junio C Hamano <hidden>
Date: 2016-06-15 23:05:33
David Turner [off-list ref] writes:
quoted hunk
This is just for clarity. Signed-off-by: David Turner <redacted> --- refs.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-)diff --git a/refs.c b/refs.c index b34a54a..dff91cf 100644 --- a/refs.c +++ b/refs.c@@ -3118,6 +3118,14 @@ static int copy_msg(char *buf, const char *msg) return cp - buf; } +static int should_autocreate_reflog(const char *refname) +{ + return starts_with(refname, "refs/heads/") || + starts_with(refname, "refs/remotes/") || + starts_with(refname, "refs/notes/") || + !strcmp(refname, "HEAD"); +} + /* This function will fill in *err and return -1 on failure */ int log_ref_setup(const char *refname, struct strbuf *sb_logfile, struct strbuf *err) {@@ -3128,11 +3136,7 @@ int log_ref_setup(const char *refname, struct strbuf *sb_logfile, struct strbuf logfile = sb_logfile->buf; /* make sure the rest of the function can't change "logfile" */ sb_logfile = NULL; - if (log_all_ref_updates && - (starts_with(refname, "refs/heads/") || - starts_with(refname, "refs/remotes/") || - starts_with(refname, "refs/notes/") || - !strcmp(refname, "HEAD"))) { + if (log_all_ref_updates && should_autocreate_reflog(refname)) {
This makes me wonder if "log_all_ref_updates &&" part should also be inside the helper. The use of the new helper in 5/7 tells me that it is the case, I would say. Besides, the answer to the question "should we auto-create reflog?" is "if we are told to log all, and then the thing is one of these, then we should:", so it is natural from the name of the new helper that "log_all_ref_updates &&" should be in there ;-)