mirror of https://github.com/apache/poi.git
Fix bug #49219 - ExternalNameRecord can have a DDE Link entry without an operation
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1082958 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
dd1af3acd9
commit
aff049234a
|
@ -34,6 +34,7 @@
|
|||
|
||||
<changes>
|
||||
<release version="3.8-beta2" date="2011-??-??">
|
||||
<action dev="poi-developers" type="fix">49219 - ExternalNameRecord support for DDE Link entries without an operation</action>
|
||||
<action dev="poi-developers" type="fix">50846 - More XSSFColor theme improvements, this time for Cell Borders</action>
|
||||
<action dev="poi-developers" type="fix">50939 - ChartEndObjectRecord is supposed to have 6 bytes at the end, but handle it not</action>
|
||||
<action dev="poi-developers" type="add">HMEF - New component which supports TNEF (Transport Neutral Encoding Format), aka winmail.dat</action>
|
||||
|
|
|
@ -176,14 +176,16 @@ public final class ExternalNameRecord extends StandardRecord {
|
|||
// another switch: the fWantAdvise bit specifies whether the body describes
|
||||
// an external defined name or a DDE data item
|
||||
if(isAutomaticLink()){
|
||||
//body specifies DDE data item
|
||||
int nColumns = in.readUByte() + 1;
|
||||
int nRows = in.readShort() + 1;
|
||||
|
||||
int totalCount = nRows * nColumns;
|
||||
_ddeValues = ConstantValueParser.parse(in, totalCount);
|
||||
_nColumns = nColumns;
|
||||
_nRows = nRows;
|
||||
if(in.available() > 0) {
|
||||
//body specifies DDE data item
|
||||
int nColumns = in.readUByte() + 1;
|
||||
int nRows = in.readShort() + 1;
|
||||
|
||||
int totalCount = nRows * nColumns;
|
||||
_ddeValues = ConstantValueParser.parse(in, totalCount);
|
||||
_nColumns = nColumns;
|
||||
_nRows = nRows;
|
||||
}
|
||||
} else {
|
||||
//body specifies an external defined name
|
||||
int formulaLen = in.readUShort();
|
||||
|
|
|
@ -2036,4 +2036,10 @@ if(1==2) {
|
|||
HSSFWorkbook wb = openSample("50939.xls");
|
||||
assertEquals(2, wb.getNumberOfSheets());
|
||||
}
|
||||
|
||||
public void test49219() throws Exception {
|
||||
HSSFWorkbook wb = openSample("49219.xls");
|
||||
assertEquals(1, wb.getNumberOfSheets());
|
||||
assertEquals("DGATE", wb.getSheetAt(0).getRow(1).getCell(0).getStringCellValue());
|
||||
}
|
||||
}
|
||||
|
|
Binary file not shown.
Loading…
Reference in New Issue