diff --git a/src/main/org/apache/tools/ant/IntrospectionHelper.java b/src/main/org/apache/tools/ant/IntrospectionHelper.java index 30086563b..719f22d9d 100644 --- a/src/main/org/apache/tools/ant/IntrospectionHelper.java +++ b/src/main/org/apache/tools/ant/IntrospectionHelper.java @@ -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); } + } } /** diff --git a/src/main/org/apache/tools/ant/taskdefs/Javadoc.java b/src/main/org/apache/tools/ant/taskdefs/Javadoc.java index f3c16ced0..b7fb41772 100644 --- a/src/main/org/apache/tools/ant/taskdefs/Javadoc.java +++ b/src/main/org/apache/tools/ant/taskdefs/Javadoc.java @@ -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 { diff --git a/src/main/org/apache/tools/ant/taskdefs/XmlProperty.java b/src/main/org/apache/tools/ant/taskdefs/XmlProperty.java index 2830bdf9c..ffd89d1c1 100644 --- a/src/main/org/apache/tools/ant/taskdefs/XmlProperty.java +++ b/src/main/org/apache/tools/ant/taskdefs/XmlProperty.java @@ -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)); diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/depend/Depend.java b/src/main/org/apache/tools/ant/taskdefs/optional/depend/Depend.java index cc65129f9..2cf335cbe 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/depend/Depend.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/depend/Depend.java @@ -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); } } diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/jdepend/JDependTask.java b/src/main/org/apache/tools/ant/taskdefs/optional/jdepend/JDependTask.java index 9d2e9ae68..c608583b1 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/jdepend/JDependTask.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/jdepend/JDependTask.java @@ -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"); } diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/sound/AntSoundPlayer.java b/src/main/org/apache/tools/ant/taskdefs/optional/sound/AntSoundPlayer.java index f2ad68618..aef214fe0 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/sound/AntSoundPlayer.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/sound/AntSoundPlayer.java @@ -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(); diff --git a/src/main/org/apache/tools/tar/TarEntry.java b/src/main/org/apache/tools/tar/TarEntry.java index de15a1c71..67990797a 100644 --- a/src/main/org/apache/tools/tar/TarEntry.java +++ b/src/main/org/apache/tools/tar/TarEntry.java @@ -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()); } /**