Author: centic
Date: Sat Dec 30 19:39:42 2023
New Revision: 1915006

URL: http://svn.apache.org/viewvc?rev=1915006&view=rev
Log:
Bug 66425: Avoid exceptions found via poi-fuzz

Prevent NullPointerException

Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=64212

Added:
    
poi/trunk/test-data/spreadsheet/clusterfuzz-testcase-minimized-POIHSSFFuzzer-6137883240824832.xls
Modified:
    poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/FeatRecord.java
    poi/trunk/poi/src/test/java/org/apache/poi/hssf/dev/TestBiffViewer.java
    poi/trunk/poi/src/test/java/org/apache/poi/hssf/dev/TestRecordLister.java
    poi/trunk/test-data/spreadsheet/stress.xls

Modified: poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/FeatRecord.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/FeatRecord.java?rev=1915006&r1=1915005&r2=1915006&view=diff
==============================================================================
--- poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/FeatRecord.java 
(original)
+++ poi/trunk/poi/src/main/java/org/apache/poi/hssf/record/FeatRecord.java Sat 
Dec 30 19:39:42 2023
@@ -132,13 +132,15 @@ public final class FeatRecord extends St
             cellRef.serialize(out);
         }
 
-        sharedFeature.serialize(out);
+        if (sharedFeature != null) {
+            sharedFeature.serialize(out);
+        }
     }
 
     protected int getDataSize() {
         return 12 + 2+1+4+2+4+2+
-            (cellRefs.length * CellRangeAddress.ENCODED_SIZE)
-            +sharedFeature.getDataSize();
+            (cellRefs.length * CellRangeAddress.ENCODED_SIZE) +
+                (sharedFeature == null ? 0 : sharedFeature.getDataSize());
     }
 
     public int getIsf_sharedFeatureType() {

Modified: 
poi/trunk/poi/src/test/java/org/apache/poi/hssf/dev/TestBiffViewer.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/poi/src/test/java/org/apache/poi/hssf/dev/TestBiffViewer.java?rev=1915006&r1=1915005&r2=1915006&view=diff
==============================================================================
--- poi/trunk/poi/src/test/java/org/apache/poi/hssf/dev/TestBiffViewer.java 
(original)
+++ poi/trunk/poi/src/test/java/org/apache/poi/hssf/dev/TestBiffViewer.java Sat 
Dec 30 19:39:42 2023
@@ -45,6 +45,7 @@ class TestBiffViewer extends BaseTestIte
         
excludes.put("clusterfuzz-testcase-minimized-POIHSSFFuzzer-5786329142919168.xls",
 IllegalStateException.class);
         
excludes.put("clusterfuzz-testcase-minimized-POIHSSFFuzzer-5889658057523200.xls",
 IndexOutOfBoundsException.class);
         
excludes.put("clusterfuzz-testcase-minimized-POIHSSFFuzzer-5175219985448960.xls",
 IndexOutOfBoundsException.class);
+        
excludes.put("clusterfuzz-testcase-minimized-POIHSSFFuzzer-6137883240824832.xls",
 IndexOutOfBoundsException.class);
 
         return excludes;
     }

Modified: 
poi/trunk/poi/src/test/java/org/apache/poi/hssf/dev/TestRecordLister.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/poi/src/test/java/org/apache/poi/hssf/dev/TestRecordLister.java?rev=1915006&r1=1915005&r2=1915006&view=diff
==============================================================================
--- poi/trunk/poi/src/test/java/org/apache/poi/hssf/dev/TestRecordLister.java 
(original)
+++ poi/trunk/poi/src/test/java/org/apache/poi/hssf/dev/TestRecordLister.java 
Sat Dec 30 19:39:42 2023
@@ -48,6 +48,8 @@ class TestRecordLister extends BaseTestI
         
excludes.put("clusterfuzz-testcase-minimized-POIHSSFFuzzer-5786329142919168.xls",
 RecordFormatException.class);
         
excludes.put("clusterfuzz-testcase-minimized-POIHSSFFuzzer-5889658057523200.xls",
 IndexOutOfBoundsException.class);
         
excludes.put("clusterfuzz-testcase-minimized-POIHSSFFuzzer-5175219985448960.xls",
 RecordFormatException.class);
+        
excludes.put("clusterfuzz-testcase-minimized-POIHSSFFuzzer-6137883240824832.xls",
 RecordFormatException.class);
+
         return excludes;
     }
 

Added: 
poi/trunk/test-data/spreadsheet/clusterfuzz-testcase-minimized-POIHSSFFuzzer-6137883240824832.xls
URL: 
http://svn.apache.org/viewvc/poi/trunk/test-data/spreadsheet/clusterfuzz-testcase-minimized-POIHSSFFuzzer-6137883240824832.xls?rev=1915006&view=auto
==============================================================================
Binary files 
poi/trunk/test-data/spreadsheet/clusterfuzz-testcase-minimized-POIHSSFFuzzer-6137883240824832.xls
 (added) and 
poi/trunk/test-data/spreadsheet/clusterfuzz-testcase-minimized-POIHSSFFuzzer-6137883240824832.xls
 Sat Dec 30 19:39:42 2023 differ

Modified: poi/trunk/test-data/spreadsheet/stress.xls
URL: 
http://svn.apache.org/viewvc/poi/trunk/test-data/spreadsheet/stress.xls?rev=1915006&r1=1915005&r2=1915006&view=diff
==============================================================================
Binary files - no diff available.



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to