]> source.dussan.org Git - poi.git/commitdiff
Change more assertions to proper checks
authorDominik Stadler <centic@apache.org>
Sun, 1 Jan 2023 15:59:48 +0000 (15:59 +0000)
committerDominik Stadler <centic@apache.org>
Sun, 1 Jan 2023 15:59:48 +0000 (15:59 +0000)
A broken input-document should not trigger assertions,
but proper exceptions with useful information for the user

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1906327 13f79535-47bb-0310-9956-ffa450edef68

poi-scratchpad/src/main/java/org/apache/poi/hslf/record/SSSlideInfoAtom.java

index a0e330b4d4d430a9c19111fbe62d8373346cfa03..89d26a6f304b02e8c41c822b75ac4d6339b878c7 100644 (file)
@@ -192,7 +192,11 @@ public class SSSlideInfoAtom extends RecordAtom {
 
         // Sanity Checking
         if(len != 24) len = 24;
-        assert(source.length >= offset+len);
+
+        if (source.length < offset+len) {
+            throw new IllegalArgumentException("Need at least " + (offset + len) +
+                    " bytes with offset " + offset + ", length " + len + " and array-size " + source.length);
+        }
 
         // Get the header
         _header = Arrays.copyOfRange(source, ofs, ofs+8);
@@ -226,7 +230,7 @@ public class SSSlideInfoAtom extends RecordAtom {
         ofs += LittleEndianConsts.SHORT_SIZE;
         _speed = LittleEndian.getUByte(source, ofs);
         ofs += LittleEndianConsts.BYTE_SIZE;
-        _unused = Arrays.copyOfRange(source,ofs,ofs+3);
+        _unused = Arrays.copyOfRange(source, ofs,ofs+3);
     }
 
     /**