44694 - HPSF: Support for property sets without sections
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@643670 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
b0825f0e98
commit
5c7ca6b786
@ -37,7 +37,7 @@
|
||||
|
||||
<!-- Don't forget to update status.xml too! -->
|
||||
<release version="3.0.3-beta1" date="2008-04-??">
|
||||
<action dev="POI-DEVELOPERS" type="add">Implement Sheet.removeShape(Shape shape) in HSLF</action>
|
||||
<action dev="RK" type="add">44694 - HPSF: Support for property sets without sections</action>
|
||||
<action dev="POI-DEVELOPERS" type="add">Various fixes: Recognising var-arg built-in functions #44675, ExternalNameRecord serialisation bug #44695, PMT() bug #44691</action>
|
||||
<action dev="POI-DEVELOPERS" type="add">30311 - More work on Conditional Formatting</action>
|
||||
<action dev="POI-DEVELOPERS" type="add">Move the Formula Evaluator code out of scratchpad</action>
|
||||
|
@ -34,6 +34,7 @@
|
||||
<!-- Don't forget to update changes.xml too! -->
|
||||
<changes>
|
||||
<release version="3.0.3-beta1" date="2008-04-??">
|
||||
<action dev="RK" type="add">44694 - HPSF: Support for property sets without sections</action>
|
||||
<action dev="POI-DEVELOPERS" type="add">Implement Sheet.removeShape(Shape shape) in HSLF</action>
|
||||
<action dev="POI-DEVELOPERS" type="add">Various fixes: Recognising var-arg built-in functions #44675, ExternalNameRecord serialisation bug #44695, PMT() bug #44691</action>
|
||||
<action dev="POI-DEVELOPERS" type="add">30311 - More work on Conditional Formatting</action>
|
||||
|
@ -92,6 +92,8 @@ public class MutablePropertySet extends PropertySet
|
||||
osVersion = ps.getOSVersion();
|
||||
setClassID(ps.getClassID());
|
||||
clearSections();
|
||||
if (sections == null)
|
||||
sections = new LinkedList();
|
||||
for (final Iterator i = ps.getSections().iterator(); i.hasNext();)
|
||||
{
|
||||
final MutableSection s = new MutableSection((Section) (i.next()));
|
||||
|
@ -387,7 +387,7 @@ public class PropertySet
|
||||
o += ClassID.LENGTH;
|
||||
final long sectionCount = LittleEndian.getUInt(src, o);
|
||||
o += LittleEndian.INT_SIZE;
|
||||
if (sectionCount < 1)
|
||||
if (sectionCount < 0)
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
@ -426,9 +426,9 @@ public class PropertySet
|
||||
o += ClassID.LENGTH;
|
||||
final int sectionCount = LittleEndian.getInt(src, o);
|
||||
o += LittleEndian.INT_SIZE;
|
||||
if (sectionCount <= 0)
|
||||
if (sectionCount < 0)
|
||||
throw new HPSFRuntimeException("Section count " + sectionCount +
|
||||
" must be greater than 0.");
|
||||
" is negative.");
|
||||
|
||||
/*
|
||||
* Read the sections, which are following the header. They
|
||||
@ -468,6 +468,8 @@ public class PropertySet
|
||||
*/
|
||||
public boolean isSummaryInformation()
|
||||
{
|
||||
if (sections.size() <= 0)
|
||||
return false;
|
||||
return Util.equal(((Section) sections.get(0)).getFormatID().getBytes(),
|
||||
SectionIDMap.SUMMARY_INFORMATION_ID);
|
||||
}
|
||||
@ -483,6 +485,8 @@ public class PropertySet
|
||||
*/
|
||||
public boolean isDocumentSummaryInformation()
|
||||
{
|
||||
if (sections.size() <= 0)
|
||||
return false;
|
||||
return Util.equal(((Section) sections.get(0)).getFormatID().getBytes(),
|
||||
SectionIDMap.DOCUMENT_SUMMARY_INFORMATION_ID[0]);
|
||||
}
|
||||
|
BIN
src/testcases/org/apache/poi/hpsf/data/Test_Humor-Generation.ppt
Normal file
BIN
src/testcases/org/apache/poi/hpsf/data/Test_Humor-Generation.ppt
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user