imap-send.c: use less verbose strbuf_fread() idiom

When looking for things that hardcoded a non-zero "hint" parameter to
strbuf_fread() I discovered that since f2561fda36 (Add git-imap-send,
derived from isync 1.0.1., 2006-03-10) we've been passing a hardcoded
4096 in imap-send.c to read stdin.

Since we're not doing anything unusual here let's use a less verbose
pattern used in a lot of other places (the hint of "0" will default to
8192). We don't need to take a FILE * here either, so we can use "0"
instead of "stdin". While we're at it improve the error message if we
can't read the input to use error_errno().

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Ævar Arnfjörð Bjarmason 2021-07-07 11:05:24 +02:00 committed by Junio C Hamano
parent 670b81a890
commit 351bca2d1f

View File

@ -1266,18 +1266,6 @@ static void wrap_in_html(struct strbuf *msg)
*msg = buf;
}
#define CHUNKSIZE 0x1000
static int read_message(FILE *f, struct strbuf *all_msgs)
{
do {
if (strbuf_fread(all_msgs, CHUNKSIZE, f) <= 0)
break;
} while (!feof(f));
return ferror(f) ? -1 : 0;
}
static int count_messages(struct strbuf *all_msgs)
{
int count = 0;
@ -1582,8 +1570,8 @@ int cmd_main(int argc, const char **argv)
}
/* read the messages */
if (read_message(stdin, &all_msgs)) {
fprintf(stderr, "error reading input\n");
if (strbuf_read(&all_msgs, 0, 0) < 0) {
error_errno(_("could not read from stdin"));
return 1;
}