You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by bo...@apache.org on 2021/05/22 15:06:30 UTC

[commons-compress] branch master updated: add back assertion that has been removed

This is an automated email from the ASF dual-hosted git repository.

bodewig pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-compress.git


The following commit(s) were added to refs/heads/master by this push:
     new a3b3b82  add back assertion that has been removed
a3b3b82 is described below

commit a3b3b82506426708a7048405c2b77c1ebfdbf361
Author: Stefan Bodewig <bo...@apache.org>
AuthorDate: Sat May 22 17:05:56 2021 +0200

    add back assertion that has been removed
---
 .../org/apache/commons/compress/archivers/sevenz/SevenZFile.java  | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/main/java/org/apache/commons/compress/archivers/sevenz/SevenZFile.java b/src/main/java/org/apache/commons/compress/archivers/sevenz/SevenZFile.java
index 0fe9da9..87aa52a 100644
--- a/src/main/java/org/apache/commons/compress/archivers/sevenz/SevenZFile.java
+++ b/src/main/java/org/apache/commons/compress/archivers/sevenz/SevenZFile.java
@@ -996,20 +996,22 @@ public class SevenZFile implements Closeable {
         for (final Folder folder : archive.folders) {
             folder.numUnpackSubStreams = 1;
         }
-        int totalUnpackStreams = archive.folders.length;
+        long unpackStreamsCount = archive.folders.length;
 
         int nid = getUnsignedByte(header);
         if (nid == NID.kNumUnpackStream) {
-            totalUnpackStreams = 0;
+            unpackStreamsCount = 0;
             for (final Folder folder : archive.folders) {
                 final long numStreams = readUint64(header);
                 assertFitsIntoNonNegativeInt("numStreams", numStreams);
                 folder.numUnpackSubStreams = (int)numStreams;
-                totalUnpackStreams += numStreams;
+                unpackStreamsCount += numStreams;
             }
             nid = getUnsignedByte(header);
         }
 
+        final int totalUnpackStreams =
+            assertFitsIntoNonNegativeInt("totalUnpackStreams", unpackStreamsCount);
         final SubStreamsInfo subStreamsInfo = new SubStreamsInfo();
         subStreamsInfo.unpackSizes = new long[totalUnpackStreams];
         subStreamsInfo.hasCrc = new BitSet(totalUnpackStreams);