diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/net/FTP.java b/src/main/org/apache/tools/ant/taskdefs/optional/net/FTP.java index 9aa1b491b..3e36a2fdf 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/net/FTP.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/net/FTP.java @@ -34,6 +34,7 @@ import java.util.HashSet; import java.util.List; import java.util.Locale; import java.util.Map; +import java.util.Objects; import java.util.Set; import java.util.StringTokenizer; import java.util.Vector; @@ -1009,7 +1010,9 @@ public class FTP extends Task implements FTPTaskConfig { Predicate test = isCaseSensitive() ? lastpathelement::equals : lastpathelement::equalsIgnoreCase; - return Stream.of(theFiles).filter(f -> test.test(f.getName())) + return Stream.of(theFiles) + .filter(Objects::nonNull) + .filter(f -> test.test(f.getName())) .findFirst().orElse(null); } diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/net/FTPTaskMirrorImpl.java b/src/main/org/apache/tools/ant/taskdefs/optional/net/FTPTaskMirrorImpl.java index 2ad81dbe7..3bff2d9fc 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/net/FTPTaskMirrorImpl.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/net/FTPTaskMirrorImpl.java @@ -33,6 +33,7 @@ import java.util.HashSet; import java.util.Hashtable; import java.util.List; import java.util.Map; +import java.util.Objects; import java.util.Set; import java.util.StringTokenizer; import java.util.Vector; @@ -913,7 +914,9 @@ public class FTPTaskMirrorImpl implements FTPTaskMirror { Predicate test = isCaseSensitive() ? lastpathelement::equals : lastpathelement::equalsIgnoreCase; - return Stream.of(theFiles).filter(f -> test.test(f.getName())) + return Stream.of(theFiles) + .filter(Objects::nonNull) + .filter(f -> test.test(f.getName())) .findFirst().orElse(null); }