Browse Source

Avert a few possible NPEs, ex. rgc-icc() and named-color() on fo:root.

git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@1097736 13f79535-47bb-0310-9956-ffa450edef68
tags/fop-1_1rc1old
Jeremias Maerki 13 years ago
parent
commit
7e27b87ae7

+ 4
- 1
src/java/org/apache/fop/fo/expr/ICCColorFunction.java View File

@@ -41,6 +41,7 @@ class ICCColorFunction extends FunctionBase {
}

/** {@inheritDoc} */
@Override
public PercentBase getPercentBase() {
return new ICCPercentBase();
}
@@ -50,7 +51,9 @@ class ICCColorFunction extends FunctionBase {
PropertyInfo pInfo) throws PropertyException {
// Map color profile NCNAME to src from declarations/color-profile element
String colorProfileName = args[3].getString();
Declarations decls = pInfo.getFO().getRoot().getDeclarations();
Declarations decls = (pInfo.getFO() != null
? pInfo.getFO().getRoot().getDeclarations()
: null);
ColorProfile cp = null;
if (decls == null) {
//function used in a color-specification

+ 4
- 1
src/java/org/apache/fop/fo/expr/NamedColorFunction.java View File

@@ -40,6 +40,7 @@ class NamedColorFunction extends FunctionBase {
}

/** {@inheritDoc} */
@Override
public PercentBase getPercentBase() {
return new NamedPercentBase();
}
@@ -51,7 +52,9 @@ class NamedColorFunction extends FunctionBase {
String colorProfileName = args[3].getString();
String colorName = args[4].getString();

Declarations decls = pInfo.getFO().getRoot().getDeclarations();
Declarations decls = (pInfo.getFO() != null
? pInfo.getFO().getRoot().getDeclarations()
: null);
ColorProfile cp = null;
if (decls != null) {
cp = decls.getColorProfile(colorProfileName);

+ 4
- 1
src/java/org/apache/fop/fo/properties/PropertyMaker.java View File

@@ -445,7 +445,9 @@ public class PropertyMaker implements Cloneable {
}
return newProp;
} catch (PropertyException propEx) {
propEx.setLocator(fo.getLocator());
if (fo != null) {
propEx.setLocator(fo.getLocator());
}
propEx.setPropertyName(getName());
throw propEx;
}
@@ -653,6 +655,7 @@ public class PropertyMaker implements Cloneable {
* subproperty makers of the generic compound makers.
* {@inheritDoc}
*/
@Override
public Object clone() {
try {
return super.clone();

Loading…
Cancel
Save