mirror of https://github.com/apache/poi.git
store unknown structures offsets and sizes in FIB
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1150457 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
64e3243598
commit
1e76375420
|
@ -41,7 +41,9 @@ public final class FIBFieldHandler
|
||||||
public static final int PLCFPAD = 7;
|
public static final int PLCFPAD = 7;
|
||||||
public static final int PLCFPHE = 8;
|
public static final int PLCFPHE = 8;
|
||||||
public static final int STTBGLSY = 9;
|
public static final int STTBGLSY = 9;
|
||||||
|
// 234 == 0x00EA; 238 == 0x00EE
|
||||||
public static final int PLCFGLSY = 10;
|
public static final int PLCFGLSY = 10;
|
||||||
|
// 242 == 0200F2; 246 == 0x00F6
|
||||||
public static final int PLCFHDD = 11;
|
public static final int PLCFHDD = 11;
|
||||||
public static final int PLCFBTECHPX = 12;
|
public static final int PLCFBTECHPX = 12;
|
||||||
public static final int PLCFBTEPAPX = 13;
|
public static final int PLCFBTEPAPX = 13;
|
||||||
|
@ -53,7 +55,9 @@ public final class FIBFieldHandler
|
||||||
public static final int PLCFFLDFTN = 18;
|
public static final int PLCFFLDFTN = 18;
|
||||||
// 306 == 0x132; 310 == 0x0136
|
// 306 == 0x132; 310 == 0x0136
|
||||||
public static final int PLCFFLDATN = 19;
|
public static final int PLCFFLDATN = 19;
|
||||||
|
// 314 == 0x013A; 318 == 0x013E
|
||||||
public static final int PLCFFLDMCR = 20;
|
public static final int PLCFFLDMCR = 20;
|
||||||
|
// 322 == 0x0142; 326 == 0x0146
|
||||||
public static final int STTBFBKMK = 21;
|
public static final int STTBFBKMK = 21;
|
||||||
// 330 == 0x014A; 334 == 0x014E
|
// 330 == 0x014A; 334 == 0x014E
|
||||||
public static final int PLCFBKF = 22;
|
public static final int PLCFBKF = 22;
|
||||||
|
@ -220,10 +224,14 @@ public final class FIBFieldHandler
|
||||||
UnhandledDataStructure ds = _unknownMap.get(Integer.valueOf(x));
|
UnhandledDataStructure ds = _unknownMap.get(Integer.valueOf(x));
|
||||||
if (ds != null)
|
if (ds != null)
|
||||||
{
|
{
|
||||||
|
_fields[x * 2] = tableStream.getOffset();
|
||||||
LittleEndian.putInt(mainStream, offset, tableStream.getOffset());
|
LittleEndian.putInt(mainStream, offset, tableStream.getOffset());
|
||||||
offset += LittleEndian.INT_SIZE;
|
offset += LittleEndian.INT_SIZE;
|
||||||
|
|
||||||
byte[] buf = ds.getBuf();
|
byte[] buf = ds.getBuf();
|
||||||
tableStream.write(buf);
|
tableStream.write(buf);
|
||||||
|
|
||||||
|
_fields[(x * 2) + 1] = buf.length;
|
||||||
LittleEndian.putInt(mainStream, offset, buf.length);
|
LittleEndian.putInt(mainStream, offset, buf.length);
|
||||||
offset += LittleEndian.INT_SIZE;
|
offset += LittleEndian.INT_SIZE;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue