mirror of
https://github.com/git/git.git
synced 2025-01-19 14:04:07 +08:00
read_and_strip_branch: fix typo'd address-of operator
When we are chomping newlines from the end of a strbuf, we must check "sb.len != 0" before accessing "sb.buf[sb.len - 1]". However, this code mistakenly checks "&sb.len", which is always true (it is a part of an auto struct, so the address is always non-zero). This could lead to us accessing memory outside the strbuf when we read an empty file. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
8b87cfd000
commit
66ec904b4e
@ -975,7 +975,7 @@ static char *read_and_strip_branch(const char *path)
|
||||
if (strbuf_read_file(&sb, git_path("%s", path), 0) <= 0)
|
||||
goto got_nothing;
|
||||
|
||||
while (&sb.len && sb.buf[sb.len - 1] == '\n')
|
||||
while (sb.len && sb.buf[sb.len - 1] == '\n')
|
||||
strbuf_setlen(&sb, sb.len - 1);
|
||||
if (!sb.len)
|
||||
goto got_nothing;
|
||||
|
Loading…
Reference in New Issue
Block a user