Author: kiwiwings
Date: Tue Apr 21 22:13:59 2020
New Revision: 1876805

URL: http://svn.apache.org/viewvc?rev=1876805&view=rev
Log:
#55505 - CountryRecord not found

Added:
    poi/trunk/test-data/spreadsheet/bug55505.xls   (with props)
Modified:
    poi/site/src/documentation/content/xdocs/changes.xml
    poi/trunk/src/java/org/apache/poi/hssf/model/LinkTable.java
    poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestBugs.java

Modified: poi/site/src/documentation/content/xdocs/changes.xml
URL: 
http://svn.apache.org/viewvc/poi/site/src/documentation/content/xdocs/changes.xml?rev=1876805&r1=1876804&r2=1876805&view=diff
==============================================================================
--- poi/site/src/documentation/content/xdocs/changes.xml (original)
+++ poi/site/src/documentation/content/xdocs/changes.xml Tue Apr 21 22:13:59 
2020
@@ -93,6 +93,7 @@
             <action type="fix" fixes-bug="63745" context="HSSF">Add traversing 
and debugging interface to HSSF</action>
             <action type="fix" fixes-bug="64350" context="POI_Overall">Sonar 
fix - "Iterator.next()" methods should throw "NoSuchElementException"</action>
             <action type="fix" fixes-bug="57843" 
context="HWPF">RuntimeException on extracting text from Word 97-2004 
Document</action>
+            <action type="fix" fixes-bug="55505" context="HSSF">CountryRecord 
not found</action>
         </actions>
     </release>
 

Modified: poi/trunk/src/java/org/apache/poi/hssf/model/LinkTable.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/model/LinkTable.java?rev=1876805&r1=1876804&r2=1876805&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/model/LinkTable.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/model/LinkTable.java Tue Apr 21 
22:13:59 2020
@@ -30,6 +30,7 @@ import org.apache.poi.hssf.record.Extern
 import org.apache.poi.hssf.record.NameCommentRecord;
 import org.apache.poi.hssf.record.NameRecord;
 import org.apache.poi.hssf.record.Record;
+import org.apache.poi.hssf.record.SSTRecord;
 import org.apache.poi.hssf.record.SupBookRecord;
 import org.apache.poi.ss.formula.SheetNameFormatter;
 import org.apache.poi.ss.formula.ptg.Area3DPtg;
@@ -271,7 +272,10 @@ final class LinkTable {
 
         int idx = findFirstRecordLocBySid(CountryRecord.sid);
         if (idx < 0) {
-            throw new RuntimeException("CountryRecord not found");
+            idx = findFirstRecordLocBySid(SSTRecord.sid) - 1;
+            if (idx < 0) {
+                throw new RuntimeException("CountryRecord or SSTRecord not 
found");
+            }
         }
         _workbookRecordList.add(idx + 1, _externSheetRecord);
         _workbookRecordList.add(idx + 1, supbook);

Modified: poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestBugs.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestBugs.java?rev=1876805&r1=1876804&r2=1876805&view=diff
==============================================================================
--- poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestBugs.java 
(original)
+++ poi/trunk/src/testcases/org/apache/poi/hssf/usermodel/TestBugs.java Tue Apr 
21 22:13:59 2020
@@ -59,7 +59,6 @@ import org.apache.poi.hssf.record.CellVa
 import org.apache.poi.hssf.record.CommonObjectDataSubRecord;
 import org.apache.poi.hssf.record.EmbeddedObjectRefSubRecord;
 import org.apache.poi.hssf.record.NameRecord;
-import org.apache.poi.hssf.record.Record;
 import org.apache.poi.hssf.record.TabIdRecord;
 import org.apache.poi.hssf.record.UnknownRecord;
 import org.apache.poi.hssf.record.aggregates.FormulaRecordAggregate;
@@ -2888,6 +2887,11 @@ public final class TestBugs extends Base
     }
 
     @Test
+    public void test55505() throws IOException {
+        simpleTest("bug55505.xls");
+    }
+
+    @Test
     public void test63940() throws IOException {
         simpleTest("SUBSTITUTE.xls");
     }
@@ -2910,6 +2914,11 @@ public final class TestBugs extends Base
             HSSFRow r = s.createRow(10_000);
             HSSFCell c = r.createCell(0);
             c.setCellValue(10);
+
+            HSSFSheet tmpSheet = wb1.createSheet("POITESTSHEET");
+            tmpSheet.createRow(10).createCell(10).setCellValue("Test");
+            wb1.removeSheetAt(wb1.getSheetIndex(tmpSheet));
+
             simpleTestHelper(wb1, fileName);
 
             try (HSSFWorkbook wb2 = writeOutAndReadBack(wb1)) {

Added: poi/trunk/test-data/spreadsheet/bug55505.xls
URL: 
http://svn.apache.org/viewvc/poi/trunk/test-data/spreadsheet/bug55505.xls?rev=1876805&view=auto
==============================================================================
Binary file - no diff available.

Propchange: poi/trunk/test-data/spreadsheet/bug55505.xls
------------------------------------------------------------------------------
    svn:mime-type = application/vnd.ms-excel



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

Reply via email to