diff --git a/src/main/java/org/ultramine/server/BackupManager.java b/src/main/java/org/ultramine/server/BackupManager.java index da89fc7..9516def 100644 --- a/src/main/java/org/ultramine/server/BackupManager.java +++ b/src/main/java/org/ultramine/server/BackupManager.java @@ -166,7 +166,7 @@ String filename = backupWorldDirs(dirs); log.info("World backup completed {}", filename); } - catch(IOException e) + catch(Throwable e) { log.error("Failed to make backup", e); } diff --git a/src/main/java/org/ultramine/server/util/ZipUtil.java b/src/main/java/org/ultramine/server/util/ZipUtil.java index 71b7bba..2c7eac4 100644 --- a/src/main/java/org/ultramine/server/util/ZipUtil.java +++ b/src/main/java/org/ultramine/server/util/ZipUtil.java @@ -5,6 +5,7 @@ import java.io.Closeable; import java.io.File; import java.io.FileInputStream; +import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStream; @@ -50,6 +51,8 @@ while (!queue.isEmpty()) { File directory = queue.pop(); + if(!directory.isDirectory()) + continue; for (File kid : directory.listFiles()) { String name = base.relativize(kid.toURI()).getPath(); @@ -67,6 +70,10 @@ fin = new FileInputStream(kid); IOUtils.copyLarge(fin, zout, buffer); } + catch(FileNotFoundException ignored) + { + + } finally { IOUtils.closeQuietly(fin);