From: Denys Vlasenko Date: Wed, 31 Jan 2018 16:37:32 +0000 (+0100) Subject: gzip: flush output buffer after stored blocks only if necessary X-Git-Tag: 1_29_0~311 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=919bc9d43c47a206e632c1b4c80c5f23e307b176;p=oweals%2Fbusybox.git gzip: flush output buffer after stored blocks only if necessary function old new delta flush_block 671 680 +9 Signed-off-by: Denys Vlasenko --- diff --git a/archival/gzip.c b/archival/gzip.c index 7df38c2bc..92130e7fb 100644 --- a/archival/gzip.c +++ b/archival/gzip.c @@ -634,7 +634,8 @@ static void copy_block(char *buf, unsigned len, int header) put_8bit(*buf++); } /* The above can 32-bit misalign outbuf */ - flush_outbuf_if_32bit_optimized(); + if (G1.outcnt & 3) /* syscalls are expensive, is it really misaligned? */ + flush_outbuf_if_32bit_optimized(); }