From 5d89978000ab088dcd7f74d6a1bfbcf382bee9c7 Mon Sep 17 00:00:00 2001 From: viniciusbds Date: Thu, 17 Oct 2019 23:59:16 -0300 Subject: [PATCH] Dealing with a possible null pointer dereference --- .../src/com/google/refine/io/FileProjectManager.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/main/src/com/google/refine/io/FileProjectManager.java b/main/src/com/google/refine/io/FileProjectManager.java index bdc6957c0..2204f37f2 100644 --- a/main/src/com/google/refine/io/FileProjectManager.java +++ b/main/src/com/google/refine/io/FileProjectManager.java @@ -194,7 +194,9 @@ public class FileProjectManager extends ProjectManager { protected void tarDir(String relative, File dir, TarOutputStream tos) throws IOException{ File[] files = dir.listFiles(); + if (files == null) return; for (File file : files) { + if (file == null) continue; if (!file.isHidden()) { String path = relative + file.getName(); @@ -333,7 +335,10 @@ public class FileProjectManager extends ProjectManager { } static protected void deleteDir(File dir) { - for (File file : dir.listFiles()) { + File[] files = dir.listFiles(); + if (files == null) return; + for (File file : files) { + if (file == null) continue; if (file.isDirectory()) { deleteDir(file); } else { @@ -377,7 +382,10 @@ public class FileProjectManager extends ProjectManager { protected void recover() { boolean recovered = false; - for (File file : _workspaceDir.listFiles()) { + File[] files = _workspaceDir.listFiles(); + if (files == null) return; + for (File file : files) { + if (file == null) continue; if (file.isDirectory() && !file.isHidden()) { String dirName = file.getName(); if (file.getName().endsWith(PROJECT_DIR_SUFFIX)) {