diff --git a/plugins/org.eclipse.xtext.util/.classpath b/plugins/org.eclipse.xtext.util/.classpath
index ad32c83a7..c72d35a04 100644
--- a/plugins/org.eclipse.xtext.util/.classpath
+++ b/plugins/org.eclipse.xtext.util/.classpath
@@ -3,5 +3,5 @@
-
+
diff --git a/plugins/org.eclipse.xtext.util/src/org/eclipse/xtext/util/Files.java b/plugins/org.eclipse.xtext.util/src/org/eclipse/xtext/util/Files.java
index 8ffe0998c..6b9e3b78d 100644
--- a/plugins/org.eclipse.xtext.util/src/org/eclipse/xtext/util/Files.java
+++ b/plugins/org.eclipse.xtext.util/src/org/eclipse/xtext/util/Files.java
@@ -68,7 +68,7 @@ public class Files {
}
}
- public static boolean cleanFolder(File parentFolder, final FileFilter filter, boolean continueOnError,
+ public static boolean cleanFolder(final File parentFolder, final FileFilter filter, boolean continueOnError,
boolean deleteParentFolder) throws FileNotFoundException {
if (!parentFolder.exists()) {
throw new FileNotFoundException(parentFolder.getAbsolutePath());
@@ -83,6 +83,9 @@ public class Files {
};
log.debug("Cleaning folder " + parentFolder.toString());
final File[] contents = parentFolder.listFiles(myFilter);
+ if (contents == null) {
+ return true;
+ }
for (int j = 0; j < contents.length; j++) {
final File file = contents[j];
if (file.isDirectory()) {
@@ -97,7 +100,7 @@ public class Files {
}
}
if (deleteParentFolder) {
- if (parentFolder.list().length==0 && !parentFolder.delete()) {
+ if (parentFolder.list() != null && parentFolder.list().length == 0 && !parentFolder.delete()) {
log.error("Couldn't delete " + parentFolder.getAbsolutePath());
return false;
}