summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libavutil/adler32.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/libavutil/adler32.c b/libavutil/adler32.c
index ab0b86da74..1d814b4561 100644
--- a/libavutil/adler32.c
+++ b/libavutil/adler32.c
@@ -25,15 +25,17 @@ unsigned long av_adler32_update(unsigned long adler, const uint8_t *buf, unsigne
if (buf == NULL) return 1L;
while (len > 0) {
- k = len < NMAX ? len : NMAX;
+ k = FFMIN(len, NMAX);
len -= k;
+#ifndef CONFIG_SMALL
while (k >= 16) {
DO16(buf);
k -= 16;
}
- if (k != 0) do {
+#endif
+ while(k--) {
DO1(buf);
- } while (--k);
+ }
s1 %= BASE;
s2 %= BASE;
}