From: Dieter Baron <dillo@nih.at>
Date: Tue, 12 Mar 2019 11:47:27 +0100
Subject: Fix AES encoding in corner case.

Was triggered when length(compressed data + AES) = n * 8192

Reported by TC in https://github.com/nih-at/libzip/issues/78
---
 lib/zip_source_winzip_aes_encode.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lib/zip_source_winzip_aes_encode.c b/lib/zip_source_winzip_aes_encode.c
index 12ed1b2..6fabcc3 100644
--- a/lib/zip_source_winzip_aes_encode.c
+++ b/lib/zip_source_winzip_aes_encode.c
@@ -163,6 +163,7 @@ winzip_aes_encrypt(zip_source_t *src, void *ud, void *data, zip_uint64_t length,
 		/* TODO: return partial read? */
 		return -1;
 	    }
+	    buffer_n += _zip_buffer_read(ctx->buffer, data + ret, length - (zip_uint64_t)ret);
 	}
 
 	return (zip_int64_t)(buffer_n + (zip_uint64_t)ret);
