diff options
author | Jason Height <jheight@apache.org> | 2003-10-14 22:50:48 +0000 |
---|---|---|
committer | Jason Height <jheight@apache.org> | 2003-10-14 22:50:48 +0000 |
commit | fdb59c28069384fa10108c463a8146d30de45e3d (patch) | |
tree | a412bb83935e101f49e1c8c77cbfe3f5d9b673b6 /src | |
parent | 43f2b5d592a83fdb34f3bd6de4d91a3c0301735f (diff) | |
download | poi-fdb59c28069384fa10108c463a8146d30de45e3d.tar.gz poi-fdb59c28069384fa10108c463a8146d30de45e3d.zip |
Fix on head for custom palettes.
Resolves 16559
git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@353402 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'src')
-rw-r--r-- | src/java/org/apache/poi/hssf/model/Workbook.java | 11 | ||||
-rw-r--r-- | src/java/org/apache/poi/hssf/model/WorkbookRecordList.java | 2 |
2 files changed, 8 insertions, 5 deletions
diff --git a/src/java/org/apache/poi/hssf/model/Workbook.java b/src/java/org/apache/poi/hssf/model/Workbook.java index 9cc2389c78..e41867996b 100644 --- a/src/java/org/apache/poi/hssf/model/Workbook.java +++ b/src/java/org/apache/poi/hssf/model/Workbook.java @@ -2074,15 +2074,18 @@ public class Workbook implements Model { public PaletteRecord getCustomPalette() { PaletteRecord palette; - Record rec = records.get(records.getPalettepos()); - if (rec instanceof PaletteRecord) - { + int palettePos = records.getPalettepos(); + if (palettePos != -1) { + Record rec = records.get(palettePos); + if (rec instanceof PaletteRecord) { palette = (PaletteRecord) rec; + } else throw new RuntimeException("InternalError: Expected PaletteRecord but got a '"+rec+"'"); } else { palette = createPalette(); - records.add(records.getPalettepos(), palette); + //Add the palette record after the bof which is always the first record + records.add(1, palette); } return palette; } diff --git a/src/java/org/apache/poi/hssf/model/WorkbookRecordList.java b/src/java/org/apache/poi/hssf/model/WorkbookRecordList.java index 0f2fa32540..90eefaefa0 100644 --- a/src/java/org/apache/poi/hssf/model/WorkbookRecordList.java +++ b/src/java/org/apache/poi/hssf/model/WorkbookRecordList.java @@ -74,7 +74,7 @@ public class WorkbookRecordList private int namepos = 0; // holds the position of last name record private int supbookpos = 0; // holds the position of sup book private int externsheetPos = 0;// holds the position of the extern sheet - private int palettepos = 0; // hold the position of the palette, if applicable + private int palettepos = -1; // hold the position of the palette, if applicable public void setRecords( List records ) |