This is an automated email from the ASF dual-hosted git repository. tilman pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/pdfbox-jbig2.git
commit add4c2929fbff3d7c92bee789140473b7be8141e Author: Tilman Hausherr <[email protected]> AuthorDate: Sat Jan 31 11:35:06 2026 +0100 PDFBOX-6151: improve exception message --- .../java/org/apache/pdfbox/jbig2/SegmentHeader.java | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/src/main/java/org/apache/pdfbox/jbig2/SegmentHeader.java b/src/main/java/org/apache/pdfbox/jbig2/SegmentHeader.java index 80f79a0..ee9548a 100644 --- a/src/main/java/org/apache/pdfbox/jbig2/SegmentHeader.java +++ b/src/main/java/org/apache/pdfbox/jbig2/SegmentHeader.java @@ -369,25 +369,22 @@ public class SegmentHeader if (null == segmentDataPart) { + Class<? extends SegmentData> segmentClass = SEGMENT_TYPE_MAP.get(segmentType); + if (null == segmentClass) + { + throw new IllegalArgumentException("No segment class for type " + segmentType); + } try { - - Class<? extends SegmentData> segmentClass = SEGMENT_TYPE_MAP.get(segmentType); - - if (null == segmentClass) - { - throw new IllegalArgumentException("No segment class for type " + segmentType); - } - segmentDataPart = segmentClass.newInstance(); segmentDataPart.init(this, getDataInputStream()); segmentData = new SoftReference<SegmentData>(segmentDataPart); - } catch (Exception e) { - throw new RuntimeException("Can't instantiate segment class", e); + throw new RuntimeException("Can't instantiate segment class " + segmentClass.getSimpleName() + + " because of " + e.getClass().getSimpleName() + ": " + e.getMessage(), e); } }
