strbuf: avoid redundant reset in strbuf_getwholeline()
The HAVE_GETDELIM variant of strbuf_getwholeline() calls strbuf_reset()
on the strbuf before handing it over to getdelim(3). This is
unnecessary:
- getdelim(3) doesn't care whether the old buffer contents is
NUL-terminated and has no access to ->len,
- on success getdelim(3) NUL-terminates the buffer and we set ->len,
- on error we either call strbuf_init() or strbuf_reset().
Remove the superfluous preparatory call.
Signed-off-by: René Scharfe <l.s.r@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
main
parent
e9019fcafe
commit
7b0203b15c
2
strbuf.c
2
strbuf.c
|
|
@ -646,8 +646,6 @@ int strbuf_getwholeline(struct strbuf *sb, FILE *fp, int term)
|
||||||
if (feof(fp))
|
if (feof(fp))
|
||||||
return EOF;
|
return EOF;
|
||||||
|
|
||||||
strbuf_reset(sb);
|
|
||||||
|
|
||||||
/* Translate slopbuf to NULL, as we cannot call realloc on it */
|
/* Translate slopbuf to NULL, as we cannot call realloc on it */
|
||||||
if (!sb->alloc)
|
if (!sb->alloc)
|
||||||
sb->buf = NULL;
|
sb->buf = NULL;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue