Bug id 21027
Patch to fix misc clone issues, submitted by Nial Pemberton .. thanks! git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/branches/REL_2_BRANCH@353182 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
ff5c232ffb
commit
a67d868825
@ -267,4 +267,14 @@ public class ContinueRecord
|
|||||||
protected void fillFields(byte [] ignored_parm1, short ignored_parm2, int ignored_parm3)
|
protected void fillFields(byte [] ignored_parm1, short ignored_parm2, int ignored_parm3)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Clone this record.
|
||||||
|
*/
|
||||||
|
public Object clone() {
|
||||||
|
ContinueRecord clone = new ContinueRecord();
|
||||||
|
clone.setData(field_1_data);
|
||||||
|
return clone;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -557,8 +557,13 @@ public class FormulaRecord
|
|||||||
.append("\n");
|
.append("\n");
|
||||||
buffer.append(" .xf = ")
|
buffer.append(" .xf = ")
|
||||||
.append(Integer.toHexString(getXFIndex())).append("\n");
|
.append(Integer.toHexString(getXFIndex())).append("\n");
|
||||||
buffer.append(" .value = ").append(getValue())
|
if (Double.isNaN(this.getValue()) && value_data != null)
|
||||||
.append("\n");
|
buffer.append(" .value (NaN) = ")
|
||||||
|
.append(org.apache.poi.util.HexDump.dump(value_data,0,0))
|
||||||
|
.append("\n");
|
||||||
|
else
|
||||||
|
buffer.append(" .value = ").append(getValue())
|
||||||
|
.append("\n");
|
||||||
buffer.append(" .options = ").append(getOptions())
|
buffer.append(" .options = ").append(getOptions())
|
||||||
.append("\n");
|
.append("\n");
|
||||||
buffer.append(" .zero = ").append(field_6_zero)
|
buffer.append(" .zero = ").append(field_6_zero)
|
||||||
@ -610,6 +615,7 @@ public class FormulaRecord
|
|||||||
Ptg ptg = (Ptg)((Ptg)field_8_parsed_expr.get(i)).clone();
|
Ptg ptg = (Ptg)((Ptg)field_8_parsed_expr.get(i)).clone();
|
||||||
rec.field_8_parsed_expr.add(i, ptg);
|
rec.field_8_parsed_expr.add(i, ptg);
|
||||||
}
|
}
|
||||||
|
rec.value_data = value_data;
|
||||||
rec.all_data = all_data;
|
rec.all_data = all_data;
|
||||||
return rec;
|
return rec;
|
||||||
}
|
}
|
||||||
|
@ -166,4 +166,14 @@ public class PasswordRecord
|
|||||||
{
|
{
|
||||||
return this.sid;
|
return this.sid;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Clone this record.
|
||||||
|
*/
|
||||||
|
public Object clone() {
|
||||||
|
PasswordRecord clone = new PasswordRecord();
|
||||||
|
clone.setPassword(field_1_password);
|
||||||
|
return clone;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -318,6 +318,7 @@ public class Area3DPtg extends Ptg
|
|||||||
ptg.field_3_last_row = field_3_last_row;
|
ptg.field_3_last_row = field_3_last_row;
|
||||||
ptg.field_4_first_column = field_4_first_column;
|
ptg.field_4_first_column = field_4_first_column;
|
||||||
ptg.field_5_last_column = field_5_last_column;
|
ptg.field_5_last_column = field_5_last_column;
|
||||||
|
ptg.setClass(ptgClass);
|
||||||
return ptg;
|
return ptg;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -321,6 +321,7 @@ public class AreaPtg
|
|||||||
ptg.field_2_last_row = field_2_last_row;
|
ptg.field_2_last_row = field_2_last_row;
|
||||||
ptg.field_3_first_column = field_3_first_column;
|
ptg.field_3_first_column = field_3_first_column;
|
||||||
ptg.field_4_last_column = field_4_last_column;
|
ptg.field_4_last_column = field_4_last_column;
|
||||||
|
ptg.setClass(ptgClass);
|
||||||
return ptg;
|
return ptg;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -63,7 +63,8 @@ public class FuncPtg extends AbstractFunctionPtg{
|
|||||||
FuncPtg ptg = new FuncPtg();
|
FuncPtg ptg = new FuncPtg();
|
||||||
//ptg.field_1_num_args = field_1_num_args;
|
//ptg.field_1_num_args = field_1_num_args;
|
||||||
ptg.field_2_fnc_index = field_2_fnc_index;
|
ptg.field_2_fnc_index = field_2_fnc_index;
|
||||||
return ptg;
|
ptg.setClass(ptgClass);
|
||||||
|
return ptg;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getSize() {
|
public int getSize() {
|
||||||
|
@ -52,6 +52,7 @@ public class FuncVarPtg extends AbstractFunctionPtg{
|
|||||||
FuncVarPtg ptg = new FuncVarPtg();
|
FuncVarPtg ptg = new FuncVarPtg();
|
||||||
ptg.field_1_num_args = field_1_num_args;
|
ptg.field_1_num_args = field_1_num_args;
|
||||||
ptg.field_2_fnc_index = field_2_fnc_index;
|
ptg.field_2_fnc_index = field_2_fnc_index;
|
||||||
|
ptg.setClass(ptgClass);
|
||||||
return ptg;
|
return ptg;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -121,6 +121,7 @@ public class NamePtg
|
|||||||
ptg.field_1_ixti = field_1_ixti;
|
ptg.field_1_ixti = field_1_ixti;
|
||||||
ptg.field_2_label_index = field_2_label_index;
|
ptg.field_2_label_index = field_2_label_index;
|
||||||
ptg.field_3_zero = field_3_zero;
|
ptg.field_3_zero = field_3_zero;
|
||||||
|
ptg.setClass(ptgClass);
|
||||||
return ptg;
|
return ptg;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -102,7 +102,7 @@ public class NameXPtg extends Ptg
|
|||||||
|
|
||||||
public void writeBytes(byte [] array, int offset)
|
public void writeBytes(byte [] array, int offset)
|
||||||
{
|
{
|
||||||
array[ offset + 0 ] = sid;
|
array[ offset + 0 ] = (byte)(sid + ptgClass);
|
||||||
LittleEndian.putShort(array, offset + 1, field_1_ixals);
|
LittleEndian.putShort(array, offset + 1, field_1_ixals);
|
||||||
LittleEndian.putShort(array,offset+3, field_2_ilbl);
|
LittleEndian.putShort(array,offset+3, field_2_ilbl);
|
||||||
LittleEndian.putShort(array, offset + 5, field_3_reserved);
|
LittleEndian.putShort(array, offset + 5, field_3_reserved);
|
||||||
@ -125,6 +125,7 @@ public class NameXPtg extends Ptg
|
|||||||
ptg.field_1_ixals = field_1_ixals;
|
ptg.field_1_ixals = field_1_ixals;
|
||||||
ptg.field_3_reserved = field_3_reserved;
|
ptg.field_3_reserved = field_3_reserved;
|
||||||
ptg.field_2_ilbl = field_2_ilbl;
|
ptg.field_2_ilbl = field_2_ilbl;
|
||||||
|
ptg.setClass(ptgClass);
|
||||||
return ptg;
|
return ptg;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -210,6 +210,7 @@ public class Ref3DPtg extends Ptg {
|
|||||||
ptg.field_1_index_extern_sheet = field_1_index_extern_sheet;
|
ptg.field_1_index_extern_sheet = field_1_index_extern_sheet;
|
||||||
ptg.field_2_row = field_2_row;
|
ptg.field_2_row = field_2_row;
|
||||||
ptg.field_3_column = field_3_column;
|
ptg.field_3_column = field_3_column;
|
||||||
|
ptg.setClass(ptgClass);
|
||||||
return ptg;
|
return ptg;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -193,6 +193,7 @@ public class ReferencePtg extends Ptg
|
|||||||
ReferencePtg ptg = new ReferencePtg();
|
ReferencePtg ptg = new ReferencePtg();
|
||||||
ptg.field_1_row = field_1_row;
|
ptg.field_1_row = field_1_row;
|
||||||
ptg.field_2_col = field_2_col;
|
ptg.field_2_col = field_2_col;
|
||||||
|
ptg.setClass(ptgClass);
|
||||||
return ptg;
|
return ptg;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user