Index: src/java/org/apache/poi/hssf/model/Sheet.java
===================================================================
RCS file:
/home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/model/Sheet.java,v
retrieving revision 1.5
diff -c -r1.5 Sheet.java
*** src/java/org/apache/poi/hssf/model/Sheet.java       10 Apr 2002 12:48:00
-0000      1.5
--- src/java/org/apache/poi/hssf/model/Sheet.java       11 Apr 2002 19:39:23
-0000
I had a problem reading spreadsheets after a recent change to
hssf/model/Sheet.java and hssf/usermodel/HSSFWorkbook.java files.

The offset parameter was removed from calls to createSheet in both files. In
Sheet.createSheet(records) the call caused it to call itself (infinite
loop). In HSSFWorkbook.HSSFWorkbook(fs) the call to
Sheet.createSheet(records) resulted in never reading any rows because the
offset was always 0 (where there would be Workbook rows not Sheet rows).

-- Craig Kelley

***************
*** 242,248 ****
      {
          log.log(log.DEBUG,
                  "Sheet createSheet (exisiting file) assumed offset 0");
!         return createSheet(records);
      }

      /**
--- 242,248 ----
      {
          log.log(log.DEBUG,
                  "Sheet createSheet (exisiting file) assumed offset 0");
!         return createSheet(records, 0);
      }

      /**
Index: src/java/org/apache/poi/hssf/usermodel/HSSFWorkbook.java
===================================================================
RCS file:
/home/cvspublic/jakarta-poi/src/java/org/apache/poi/hssf/usermodel/HSSFWorkb
ook.java,v
retrieving revision 1.5
diff -c -r1.5 HSSFWorkbook.java
*** src/java/org/apache/poi/hssf/usermodel/HSSFWorkbook.java    10 Apr 2002
12:48:00 -0000      1.5
--- src/java/org/apache/poi/hssf/usermodel/HSSFWorkbook.java    11 Apr 2002
19:39:24 -0000
***************
*** 145,151 ****

          while (numRecords < records.size())
          {
!             Sheet sheet = Sheet.createSheet(records);

              numRecords += sheet.getNumRecords();
              sheet.convertLabelRecords(
--- 145,151 ----

          while (numRecords < records.size())
          {
!             Sheet sheet = Sheet.createSheet(records, numRecords);

              numRecords += sheet.getNumRecords();
              sheet.convertLabelRecords(

Reply via email to