diff --git a/src/java/org/apache/poi/hssf/usermodel/HSSFSheet.java b/src/java/org/apache/poi/hssf/usermodel/HSSFSheet.java index b6ad9c9be..eb097c62e 100644 --- a/src/java/org/apache/poi/hssf/usermodel/HSSFSheet.java +++ b/src/java/org/apache/poi/hssf/usermodel/HSSFSheet.java @@ -209,12 +209,14 @@ public final class HSSFSheet implements org.apache.poi.ss.usermodel.Sheet { hrow = getRow(cval.getRow()); lastrow = hrow; if (hrow == null) { + /* we removed this check, see bug 47245 for the discussion around this // Some tools (like Perl module Spreadsheet::WriteExcel - bug 41187) skip the RowRecords // Excel, OpenOffice.org and GoogleDocs are all OK with this, so POI should be too. if (rowRecordsAlreadyPresent) { // if at least one row record is present, all should be present. throw new RuntimeException("Unexpected missing row when some rows already present"); - } + }*/ + // create the row record on the fly now. RowRecord rowRec = new RowRecord(cval.getRow()); sheet.addRow(rowRec); diff --git a/test-data/spreadsheet/47245_test.xls b/test-data/spreadsheet/47245_test.xls new file mode 100644 index 000000000..2e30bd5ec Binary files /dev/null and b/test-data/spreadsheet/47245_test.xls differ