Browse Source

fix possible null dereferences

master
Stefan Bodewig 8 years ago
parent
commit
77c681c5be
7 changed files with 16 additions and 8 deletions
  1. +2
    -0
      src/main/org/apache/tools/ant/IntrospectionHelper.java
  2. +4
    -2
      src/main/org/apache/tools/ant/taskdefs/Javadoc.java
  3. +4
    -2
      src/main/org/apache/tools/ant/taskdefs/XmlProperty.java
  4. +1
    -1
      src/main/org/apache/tools/ant/taskdefs/optional/depend/Depend.java
  5. +1
    -1
      src/main/org/apache/tools/ant/taskdefs/optional/jdepend/JDependTask.java
  6. +3
    -1
      src/main/org/apache/tools/ant/taskdefs/optional/sound/AntSoundPlayer.java
  7. +1
    -1
      src/main/org/apache/tools/tar/TarEntry.java

+ 2
- 0
src/main/org/apache/tools/ant/IntrospectionHelper.java View File

@@ -407,6 +407,7 @@ public final class IntrospectionHelper {
+ " doesn't support the \"" + attributeName + "\" attribute.";
throw new UnsupportedAttributeException(msg, attributeName);
}
if (as != null) { // possible if value == null
try {
as.setObject(p, element, value);
} catch (final IllegalAccessException ie) {
@@ -415,6 +416,7 @@ public final class IntrospectionHelper {
} catch (final InvocationTargetException ite) {
throw extractBuildException(ite);
}
}
}

/**


+ 4
- 2
src/main/org/apache/tools/ant/taskdefs/Javadoc.java View File

@@ -1772,10 +1772,12 @@ public class Javadoc extends Task {
useExternalFile, tmpList, srcListWriter);

if (useExternalFile) {
srcListWriter.flush();
srcListWriter.flush(); //NOSONAR
}
} catch (final IOException e) {
tmpList.delete();
if (tmpList != null) {
tmpList.delete();
}
throw new BuildException("Error creating temporary file",
e, getLocation());
} finally {


+ 4
- 2
src/main/org/apache/tools/ant/taskdefs/XmlProperty.java View File

@@ -384,10 +384,12 @@ public class XmlProperty extends org.apache.tools.ant.Task {
if (containingPath != null && nodeName.equals(PATH)) {
// A "path" attribute for a node within a Path object.
containingPath.setPath(attributeValue);
} else if (container instanceof Path && nodeName.equals(REF_ID)) {
} else if (containingPath != null
&& container instanceof Path && nodeName.equals(REF_ID)) {
// A "refid" attribute for a node within a Path object.
containingPath.setPath(attributeValue);
} else if (container instanceof Path && nodeName.equals(LOCATION)) {
} else if (containingPath != null && container instanceof Path
&& nodeName.equals(LOCATION)) {
// A "location" attribute for a node within a
// Path object.
containingPath.setLocation(resolveFile(attributeValue));


+ 1
- 1
src/main/org/apache/tools/ant/taskdefs/optional/depend/Depend.java View File

@@ -197,7 +197,7 @@ public class Depend extends MatchingTask {
dependencyList = new Vector();
className = line.substring(prependLength);
dependencyMap.put(className, dependencyList);
} else {
} else if (dependencyList != null) {
dependencyList.addElement(line);
}
}


+ 1
- 1
src/main/org/apache/tools/ant/taskdefs/optional/jdepend/JDependTask.java View File

@@ -553,7 +553,7 @@ public class JDependTask extends Task {
}

jdepend.analyze();
if (pw.checkError()) {
if (pw != null && pw.checkError()) {
throw new IOException("Encountered an error writing JDepend"
+ " output");
}


+ 3
- 1
src/main/org/apache/tools/ant/taskdefs/optional/sound/AntSoundPlayer.java View File

@@ -133,7 +133,9 @@ public class AntSoundPlayer implements LineListener, BuildListener {
} else {
playClip(audioClip, loops);
}
audioClip.drain();
if (audioClip != null) {
audioClip.drain();
}
} finally {
if (audioClip != null) {
audioClip.close();


+ 1
- 1
src/main/org/apache/tools/tar/TarEntry.java View File

@@ -333,7 +333,7 @@ public class TarEntry implements TarConstants {
* @return True if the entries are equal.
*/
public boolean equals(TarEntry it) {
return getName().equals(it.getName());
return it != null && getName().equals(it.getName());
}

/**


Loading…
Cancel
Save