Fix size calculation (missing parenthesis).
diff --git a/lib/zip_source_buffer.c b/lib/zip_source_buffer.c
index 44e2c7e..86ed750 100644
--- a/lib/zip_source_buffer.c
+++ b/lib/zip_source_buffer.c
@@ -394,7 +394,7 @@
     }
 
     if ((fragments = realloc(buffer->fragments, sizeof(buffer->fragments[0]) * capacity)) == NULL
-        || (offsets = realloc(buffer->fragment_offsets, sizeof(buffer->fragment_offsets[0]) * capacity + 1)) == NULL) {
+        || (offsets = realloc(buffer->fragment_offsets, sizeof(buffer->fragment_offsets[0]) * (capacity + 1))) == NULL) {
         free(fragments);
         zip_error_set(error, ZIP_ER_MEMORY, 0);
         return false;