]> source.dussan.org Git - poi.git/commitdiff
Bug 66425: Avoid a ClassCastException found via oss-fuzz
authorDominik Stadler <centic@apache.org>
Mon, 7 Aug 2023 11:11:08 +0000 (11:11 +0000)
committerDominik Stadler <centic@apache.org>
Mon, 7 Aug 2023 11:11:08 +0000 (11:11 +0000)
Add exception details and fix expected exceptions to make tests run again

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

poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFDocument.java
poi-scratchpad/src/main/java/org/apache/poi/hsmf/datatypes/Chunks.java
test-data/spreadsheet/stress.xls

index 1ddc55d98a69abd0d3d948e45210ecd7aee5a686..b5c926967e38a02ef5956f9b4e32a994cf6eccf6 100644 (file)
@@ -286,7 +286,7 @@ public class XWPFDocument extends POIXMLDocument implements Document, IBody {
                         }
                     }
                 } catch (ClassCastException e) {
-                    throw new IllegalArgumentException("Relation and type of document-part did not match, had relation " + relation + " and type of document-part: " + p.getClass());
+                    throw new IllegalArgumentException("Relation and type of document-part did not match, had relation " + relation + " and type of document-part: " + p.getClass(), e);
                 }
             }
             initHyperlinks();
index 2ffcb3f3b2ca7b90aa44d6d8cab04cd9a7696101..37105fc8d0c4536daf7822e4f16039c93b38c09f 100644 (file)
@@ -251,7 +251,7 @@ public final class Chunks implements ChunkGroupWithProperties {
             allChunks.computeIfAbsent(prop, k -> new ArrayList<>());
             allChunks.get(prop).add(chunk);
         } catch (ClassCastException e) {
-            throw new IllegalArgumentException("Property and type of chunk did not match, had property " + prop + " and type of chunk: " + chunk.getClass());
+            throw new IllegalArgumentException("Property and type of chunk did not match, had property " + prop + " and type of chunk: " + chunk.getClass(), e);
         }
     }
 
index 74b0f1b5dac650a3f8000e9f2f161f27675e0933..bfa0cd3f93e22a35db6f739bb84a32f04800f413 100644 (file)
Binary files a/test-data/spreadsheet/stress.xls and b/test-data/spreadsheet/stress.xls differ