convert log_ref_write_fd() to use strbuf
Since we don't care about how many bytes were written, simplify the return value logic. log_ref_write_fd() was written long before strbuf was fleshed out. Remove the old manual buffer management code and replace it with strbuf(). Also update copy_reflog_msg() which is called only by log_ref_write_fd() to use strbuf as it keeps things consistent. Signed-off-by: Ben Peart <Ben.Peart@microsoft.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
e3331758f1
commit
80a6c2073b
12
refs.c
12
refs.c
@ -786,25 +786,21 @@ int delete_ref(const char *msg, const char *refname,
|
||||
old_oid, flags);
|
||||
}
|
||||
|
||||
int copy_reflog_msg(char *buf, const char *msg)
|
||||
void copy_reflog_msg(struct strbuf *sb, const char *msg)
|
||||
{
|
||||
char *cp = buf;
|
||||
char c;
|
||||
int wasspace = 1;
|
||||
|
||||
*cp++ = '\t';
|
||||
strbuf_addch(sb, '\t');
|
||||
while ((c = *msg++)) {
|
||||
if (wasspace && isspace(c))
|
||||
continue;
|
||||
wasspace = isspace(c);
|
||||
if (wasspace)
|
||||
c = ' ';
|
||||
*cp++ = c;
|
||||
strbuf_addch(sb, c);
|
||||
}
|
||||
while (buf < cp && isspace(cp[-1]))
|
||||
cp--;
|
||||
*cp++ = '\n';
|
||||
return cp - buf;
|
||||
strbuf_rtrim(sb);
|
||||
}
|
||||
|
||||
int should_autocreate_reflog(const char *refname)
|
||||
|
Reference in New Issue
Block a user