summaryrefslogtreecommitdiff
path: root/libarchive/archive_write_add_filter_compress.c
diff options
context:
space:
mode:
authorMichihiro NAKAJIMA <ggcueroad@gmail.com>2012-02-27 18:04:09 +0900
committerMichihiro NAKAJIMA <ggcueroad@gmail.com>2012-02-27 18:04:09 +0900
commit3c856771e2aa8633d8ce664633c4bf74f0377c8b (patch)
tree3c108788d7ec224bfbba065049c50341224bf745 /libarchive/archive_write_add_filter_compress.c
parenta33b1a713b056ab671a51511b7860cbb4ac68d77 (diff)
downloadlibarchive-3c856771e2aa8633d8ce664633c4bf74f0377c8b.tar.gz
Fix the error which Clang Static Analyzer says "Division by zero".
Diffstat (limited to 'libarchive/archive_write_add_filter_compress.c')
-rw-r--r--libarchive/archive_write_add_filter_compress.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libarchive/archive_write_add_filter_compress.c b/libarchive/archive_write_add_filter_compress.c
index 84c6db23..4923316f 100644
--- a/libarchive/archive_write_add_filter_compress.c
+++ b/libarchive/archive_write_add_filter_compress.c
@@ -396,7 +396,7 @@ archive_compressor_compress_write(struct archive_write_filter *f,
state->checkpoint = state->in_count + CHECK_GAP;
- if (state->in_count <= 0x007fffff)
+ if (state->in_count <= 0x007fffff && state->out_count != 0)
ratio = (int)(state->in_count * 256 / state->out_count);
else if ((ratio = (int)(state->out_count / 256)) == 0)
ratio = 0x7fffffff;