From cc7a1891ee383af61d0982fd8b8313ba68987b3c Mon Sep 17 00:00:00 2001 From: Matthias Sohn Date: Fri, 4 Dec 2020 01:26:23 +0100 Subject: [PATCH] [spotbugs] Fix potential NPEs in FileReftableStackTest File#listFiles can return null. Use Files#list instead to fix the problem. Change-Id: I74e0b49aa6dae370219507c64aa43be4d8aa7b82 Signed-off-by: Matthias Sohn --- .../storage/file/FileReftableStackTest.java | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/FileReftableStackTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/FileReftableStackTest.java index 72bff1683..6c74f0079 100644 --- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/FileReftableStackTest.java +++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/FileReftableStackTest.java @@ -18,7 +18,8 @@ import java.io.File; import java.io.FileNotFoundException; import java.io.IOException; -import java.util.Arrays; +import java.nio.file.Files; +import java.nio.file.Path; import java.util.Collections; import java.util.List; import java.util.stream.Collectors; @@ -90,8 +91,9 @@ public void testCompaction(int N) throws Exception { assertEquals(ObjectId.zeroId(), c.getRef().getObjectId()); } - List files = Arrays.asList(reftableDir.listFiles()).stream() - .map(File::getName).collect(Collectors.toList()); + List files = Files.list(reftableDir.toPath()) + .map(Path::getFileName).map(Path::toString) + .collect(Collectors.toList()); Collections.sort(files); assertTrue(files.size() < 20); @@ -130,11 +132,14 @@ public void missingReftable() throws Exception { }); assertTrue(ok); - List files = Arrays.asList(reftableDir.listFiles()); + List files = Files.list(reftableDir.toPath()) + .collect(Collectors.toList()); for (int j = 0; j < files.size(); j++) { - File f = files.get(j); - if (f.getName().endsWith(".ref")) { - assertTrue(f.delete()); + Path f = files.get(j); + Path fileName = f.getFileName(); + if (fileName != null + && fileName.toString().endsWith(".ref")) { + Files.delete(f); break outer; } }