This is an automated email from the ASF dual-hosted git repository. ggregory pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-io.git
The following commit(s) were added to refs/heads/master by this push: new 4370bce Make `FilenameUtils.equals()` not throw an exception (#154) 4370bce is described below commit 4370bcea82ca775a7a790b8b7c85fd9602551d49 Author: Michael Ernst <mer...@cs.washington.edu> AuthorDate: Thu Oct 1 08:26:56 2020 -0700 Make `FilenameUtils.equals()` not throw an exception (#154) * Improve exception thrown by FilenameUtils.equals() * Remove unused import * Don't throw exception --- .../java/org/apache/commons/io/FilenameUtils.java | 9 ++++++--- .../apache/commons/io/FilenameUtilsTestCase.java | 21 +++------------------ 2 files changed, 9 insertions(+), 21 deletions(-) diff --git a/src/main/java/org/apache/commons/io/FilenameUtils.java b/src/main/java/org/apache/commons/io/FilenameUtils.java index c86ff8a..57acba7 100644 --- a/src/main/java/org/apache/commons/io/FilenameUtils.java +++ b/src/main/java/org/apache/commons/io/FilenameUtils.java @@ -24,7 +24,6 @@ import java.util.Arrays; import java.util.Collection; import java.util.Deque; import java.util.List; -import java.util.Objects; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -1210,9 +1209,13 @@ public class FilenameUtils { } if (normalized) { fileName1 = normalize(fileName1); + if (fileName1 == null) { + return false; + } fileName2 = normalize(fileName2); - Objects.requireNonNull(fileName1, "Error normalizing one or both of the file names"); - Objects.requireNonNull(fileName2, "Error normalizing one or both of the file names"); + if (fileName2 == null) { + return false; + } } if (caseSensitivity == null) { caseSensitivity = IOCase.SENSITIVE; diff --git a/src/test/java/org/apache/commons/io/FilenameUtilsTestCase.java b/src/test/java/org/apache/commons/io/FilenameUtilsTestCase.java index ec6c8fd..2fe5028 100644 --- a/src/test/java/org/apache/commons/io/FilenameUtilsTestCase.java +++ b/src/test/java/org/apache/commons/io/FilenameUtilsTestCase.java @@ -997,24 +997,9 @@ public class FilenameUtilsTestCase { */ @Test public void testEqualsNormalizedError_IO_128() { - try { - FilenameUtils.equalsNormalizedOnSystem("//file.txt", "file.txt"); - fail("Invalid normalized first file"); - } catch (final NullPointerException e) { - // expected result - } - try { - FilenameUtils.equalsNormalizedOnSystem("file.txt", "//file.txt"); - fail("Invalid normalized second file"); - } catch (final NullPointerException e) { - // expected result - } - try { - FilenameUtils.equalsNormalizedOnSystem("//file.txt", "//file.txt"); - fail("Invalid normalized both filse"); - } catch (final NullPointerException e) { - // expected result - } + assertFalse(FilenameUtils.equalsNormalizedOnSystem("//file.txt", "file.txt")); + assertFalse(FilenameUtils.equalsNormalizedOnSystem("file.txt", "//file.txt")); + assertFalse(FilenameUtils.equalsNormalizedOnSystem("//file.txt", "//file.txt")); } @Test