Browse Source

Patch from bug #43108 - when fetching system properties, use sensible defaults if we're not able to access them

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@566183 13f79535-47bb-0310-9956-ffa450edef68
tags/REL_3_0_2_BETA1
Nick Burch 17 years ago
parent
commit
9cedf7aae0

+ 1
- 0
src/documentation/content/xdocs/changes.xml View File

@@ -36,6 +36,7 @@
</devs>

<release version="3.0.2-FINAL" date="2007-??-??">
<action dev="POI-DEVELOPERS" type="fix">43108 - [PATCH] - Where permissions deny fetching System Properties, use sensible defaults</action>
<action dev="POI-DEVELOPERS" type="fix">43093 - [PATCH] - Fix formula evaluator support for Area3D references to other sheets</action>
<action dev="POI-DEVELOPERS" type="fix">Improvements to HSSFDateUtils.isADateFormat, and have HSSFDateUtil.isCellDateFormatted use this</action>
<action dev="POI-DEVELOPERS" type="fix">42999 - [PATCH] - Fix for HSSFPatriarch positioning problems</action>

+ 1
- 0
src/documentation/content/xdocs/status.xml View File

@@ -33,6 +33,7 @@

<changes>
<release version="3.0.2-FINAL" date="2007-??-??">
<action dev="POI-DEVELOPERS" type="fix">43108 - [PATCH] - Where permissions deny fetching System Properties, use sensible defaults</action>
<action dev="POI-DEVELOPERS" type="fix">43093 - [PATCH] - Fix formula evaluator support for Area3D references to other sheets</action>
<action dev="POI-DEVELOPERS" type="fix">Improvements to HSSFDateUtils.isADateFormat, and have HSSFDateUtil.isCellDateFormatted use this</action>
<action dev="POI-DEVELOPERS" type="fix">42999 - [PATCH] - Fix for HSSFPatriarch positioning problems</action>

+ 8
- 1
src/java/org/apache/poi/hssf/record/AbstractEscherHolderRecord.java View File

@@ -38,7 +38,14 @@ import java.util.List;
public abstract class AbstractEscherHolderRecord
extends Record
{
private static final boolean DESERIALISE = System.getProperty("poi.deserialize.escher") != null;
private static boolean DESERIALISE;
static {
try {
DESERIALISE = (System.getProperty("poi.deserialize.escher") != null);
} catch (SecurityException e) {
DESERIALISE = false;
}
}

private List escherRecords;
private byte[] rawData;

+ 12
- 6
src/java/org/apache/poi/hssf/usermodel/StaticFontMetrics.java View File

@@ -52,16 +52,22 @@ class StaticFontMetrics
try
{
fontMetricsProps = new Properties();
if (System.getProperty("font.metrics.filename") != null)
{
String filename = System.getProperty("font.metrics.filename");
File file = new File(filename);

// Check to see if the font metric file was specified
// as a system property
String propFileName = null;
try {
propFileName = System.getProperty("font.metrics.filename");
} catch(SecurityException e) {}

if (propFileName != null) {
File file = new File(propFileName);
if (!file.exists())
throw new FileNotFoundException("font_metrics.properties not found at path " + file.getAbsolutePath());
metricsIn = new FileInputStream(file);
}
else
{
else {
// Use the built-in font metrics file off the classpath
metricsIn = FontDetails.class.getResourceAsStream("/font_metrics.properties");
if (metricsIn == null)
throw new FileNotFoundException("font_metrics.properties not found in classpath");

+ 7
- 1
src/java/org/apache/poi/util/SystemOutLogger.java View File

@@ -65,7 +65,13 @@ public class SystemOutLogger extends POILogger
*/
public boolean check(final int level)
{
int currentLevel = Integer.parseInt(System.getProperty("poi.log.level", WARN + ""));
int currentLevel;
try {
currentLevel = Integer.parseInt(System.getProperty("poi.log.level", WARN + ""));
} catch (SecurityException e) {
currentLevel = POILogger.DEBUG;
}

if (level >= currentLevel)
return true;
else

Loading…
Cancel
Save