42570 - fixed LabelRecord to use empty string instead of null when the length is zero.
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@653675 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
8264540df1
commit
6fc050034d
@ -37,6 +37,7 @@
|
|||||||
|
|
||||||
<!-- Don't forget to update status.xml too! -->
|
<!-- Don't forget to update status.xml too! -->
|
||||||
<release version="3.1-beta2" date="2008-05-??">
|
<release version="3.1-beta2" date="2008-05-??">
|
||||||
|
<action dev="POI-DEVELOPERS" type="fix">42570 - fixed LabelRecord to use empty string instead of null when the length is zero.</action>
|
||||||
<action dev="POI-DEVELOPERS" type="fix">42564 - fixed ArrayPtg to use ConstantValueParser. Fixed a few other ArrayPtg encoding issues.</action>
|
<action dev="POI-DEVELOPERS" type="fix">42564 - fixed ArrayPtg to use ConstantValueParser. Fixed a few other ArrayPtg encoding issues.</action>
|
||||||
<action dev="POI-DEVELOPERS" type="fix">Follow-on from 28754 - StringPtg.toFormulaString() should escape double quotes</action>
|
<action dev="POI-DEVELOPERS" type="fix">Follow-on from 28754 - StringPtg.toFormulaString() should escape double quotes</action>
|
||||||
<action dev="POI-DEVELOPERS" type="fix">44929 - Improved error handling in HSSFWorkbook when attempting to read a BIFF5 file</action>
|
<action dev="POI-DEVELOPERS" type="fix">44929 - Improved error handling in HSSFWorkbook when attempting to read a BIFF5 file</action>
|
||||||
|
@ -34,6 +34,7 @@
|
|||||||
<!-- Don't forget to update changes.xml too! -->
|
<!-- Don't forget to update changes.xml too! -->
|
||||||
<changes>
|
<changes>
|
||||||
<release version="3.1-beta2" date="2008-05-??">
|
<release version="3.1-beta2" date="2008-05-??">
|
||||||
|
<action dev="POI-DEVELOPERS" type="fix">42570 - fixed LabelRecord to use empty string instead of null when the length is zero.</action>
|
||||||
<action dev="POI-DEVELOPERS" type="fix">42564 - fixed ArrayPtg to use ConstantValueParser. Fixed a few other ArrayPtg encoding issues.</action>
|
<action dev="POI-DEVELOPERS" type="fix">42564 - fixed ArrayPtg to use ConstantValueParser. Fixed a few other ArrayPtg encoding issues.</action>
|
||||||
<action dev="POI-DEVELOPERS" type="fix">Follow-on from 28754 - StringPtg.toFormulaString() should escape double quotes</action>
|
<action dev="POI-DEVELOPERS" type="fix">Follow-on from 28754 - StringPtg.toFormulaString() should escape double quotes</action>
|
||||||
<action dev="POI-DEVELOPERS" type="fix">44929 - Improved error handling in HSSFWorkbook when attempting to read a BIFF5 file</action>
|
<action dev="POI-DEVELOPERS" type="fix">44929 - Improved error handling in HSSFWorkbook when attempting to read a BIFF5 file</action>
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
/* ====================================================================
|
/* ====================================================================
|
||||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
contributor license agreements. See the NOTICE file distributed with
|
contributor license agreements. See the NOTICE file distributed with
|
||||||
@ -15,13 +14,7 @@
|
|||||||
See the License for the specific language governing permissions and
|
See the License for the specific language governing permissions and
|
||||||
limitations under the License.
|
limitations under the License.
|
||||||
==================================================================== */
|
==================================================================== */
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* LabelRecord.java
|
|
||||||
*
|
|
||||||
* Created on November 11, 2001, 12:51 PM
|
|
||||||
*/
|
|
||||||
package org.apache.poi.hssf.record;
|
package org.apache.poi.hssf.record;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -33,14 +26,10 @@ package org.apache.poi.hssf.record;
|
|||||||
* @version 2.0-pre
|
* @version 2.0-pre
|
||||||
* @see org.apache.poi.hssf.record.LabelSSTRecord
|
* @see org.apache.poi.hssf.record.LabelSSTRecord
|
||||||
*/
|
*/
|
||||||
|
public final class LabelRecord extends Record implements CellValueRecordInterface {
|
||||||
public class LabelRecord
|
|
||||||
extends Record
|
|
||||||
implements CellValueRecordInterface
|
|
||||||
{
|
|
||||||
public final static short sid = 0x204;
|
public final static short sid = 0x204;
|
||||||
//private short field_1_row;
|
|
||||||
private int field_1_row;
|
private int field_1_row;
|
||||||
private short field_2_column;
|
private short field_2_column;
|
||||||
private short field_3_xf_index;
|
private short field_3_xf_index;
|
||||||
private short field_4_string_len;
|
private short field_4_string_len;
|
||||||
@ -85,35 +74,30 @@ public class LabelRecord
|
|||||||
|
|
||||||
protected void fillFields(RecordInputStream in)
|
protected void fillFields(RecordInputStream in)
|
||||||
{
|
{
|
||||||
//field_1_row = LittleEndian.getShort(data, 0 + offset);
|
|
||||||
field_1_row = in.readUShort();
|
field_1_row = in.readUShort();
|
||||||
field_2_column = in.readShort();
|
field_2_column = in.readShort();
|
||||||
field_3_xf_index = in.readShort();
|
field_3_xf_index = in.readShort();
|
||||||
field_4_string_len = in.readShort();
|
field_4_string_len = in.readShort();
|
||||||
field_5_unicode_flag = in.readByte();
|
field_5_unicode_flag = in.readByte();
|
||||||
if (field_4_string_len > 0) {
|
if (field_4_string_len > 0) {
|
||||||
if (isUnCompressedUnicode()) {
|
if (isUnCompressedUnicode()) {
|
||||||
field_6_value = in.readUnicodeLEString(field_4_string_len);
|
field_6_value = in.readUnicodeLEString(field_4_string_len);
|
||||||
} else {
|
} else {
|
||||||
field_6_value = in.readCompressedUnicode(field_4_string_len);
|
field_6_value = in.readCompressedUnicode(field_4_string_len);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
field_6_value = "";
|
||||||
}
|
}
|
||||||
} else field_6_value = null;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* READ ONLY ACCESS... THIS IS FOR COMPATIBILITY ONLY...USE LABELSST!
|
/*
|
||||||
public void setRow(short row) {
|
* READ ONLY ACCESS... THIS IS FOR COMPATIBILITY ONLY...USE LABELSST! public
|
||||||
field_1_row = row;
|
* void setRow(short row) { field_1_row = row; }
|
||||||
}
|
*
|
||||||
|
* public void setColumn(short col) { field_2_column = col; }
|
||||||
public void setColumn(short col) {
|
*
|
||||||
field_2_column = col;
|
* public void setXFIndex(short index) { field_3_xf_index = index; }
|
||||||
}
|
*/
|
||||||
|
|
||||||
public void setXFIndex(short index) {
|
|
||||||
field_3_xf_index = index;
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
//public short getRow()
|
|
||||||
public int getRow()
|
public int getRow()
|
||||||
{
|
{
|
||||||
return field_1_row;
|
return field_1_row;
|
||||||
|
BIN
src/testcases/org/apache/poi/hssf/data/ex42570-20305.xls
Normal file
BIN
src/testcases/org/apache/poi/hssf/data/ex42570-20305.xls
Normal file
Binary file not shown.
@ -67,6 +67,7 @@ public final class AllRecordTests {
|
|||||||
result.addTestSuite(TestFormulaRecord.class);
|
result.addTestSuite(TestFormulaRecord.class);
|
||||||
result.addTestSuite(TestFrameRecord.class);
|
result.addTestSuite(TestFrameRecord.class);
|
||||||
result.addTestSuite(TestHyperlinkRecord.class);
|
result.addTestSuite(TestHyperlinkRecord.class);
|
||||||
|
result.addTestSuite(TestLabelRecord.class);
|
||||||
result.addTestSuite(TestLegendRecord.class);
|
result.addTestSuite(TestLegendRecord.class);
|
||||||
result.addTestSuite(TestLineFormatRecord.class);
|
result.addTestSuite(TestLineFormatRecord.class);
|
||||||
result.addTestSuite(TestLinkedDataRecord.class);
|
result.addTestSuite(TestLinkedDataRecord.class);
|
||||||
|
@ -0,0 +1,41 @@
|
|||||||
|
/* ====================================================================
|
||||||
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
|
contributor license agreements. See the NOTICE file distributed with
|
||||||
|
this work for additional information regarding copyright ownership.
|
||||||
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
|
(the "License"); you may not use this file except in compliance with
|
||||||
|
the License. You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
==================================================================== */
|
||||||
|
|
||||||
|
package org.apache.poi.hssf.record;
|
||||||
|
|
||||||
|
import org.apache.poi.hssf.HSSFTestDataSamples;
|
||||||
|
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
|
||||||
|
|
||||||
|
import junit.framework.AssertionFailedError;
|
||||||
|
import junit.framework.TestCase;
|
||||||
|
/**
|
||||||
|
* Tests for <tt>LabelRecord</tt>
|
||||||
|
*
|
||||||
|
* @author Josh Micich
|
||||||
|
*/
|
||||||
|
public final class TestLabelRecord extends TestCase {
|
||||||
|
|
||||||
|
public void testEmptyString() {
|
||||||
|
HSSFWorkbook wb;
|
||||||
|
try {
|
||||||
|
wb = HSSFTestDataSamples.openSampleWorkbook("ex42570-20305.xls");
|
||||||
|
} catch (NullPointerException e) {
|
||||||
|
throw new AssertionFailedError("Identified bug 42570");
|
||||||
|
}
|
||||||
|
HSSFTestDataSamples.writeOutAndReadBack(wb);
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user