diff --git a/common/src/main/java/ctbrec/Config.java b/common/src/main/java/ctbrec/Config.java index 4e637ad9..f2b18823 100644 --- a/common/src/main/java/ctbrec/Config.java +++ b/common/src/main/java/ctbrec/Config.java @@ -20,6 +20,7 @@ import java.time.ZoneId; import java.time.format.DateTimeFormatter; import java.time.format.FormatStyle; import java.util.*; +import java.util.regex.Pattern; import static java.nio.charset.StandardCharsets.UTF_8; import static java.nio.file.StandardOpenOption.*; @@ -86,7 +87,7 @@ public class Config { private void deleteOldBackups(File currentConfigDir) { File parent = currentConfigDir.getParentFile(); - File[] backupDirectories = parent.listFiles(file -> file.isDirectory() && file.getName().matches(".*?_backup_\\d{4}-\\d{2}-\\d{2}_\\d{2}-\\d{2}-\\d{2}_\\d{3}")); + File[] backupDirectories = parent.listFiles(file -> file.isDirectory() && file.getName().matches(Pattern.quote(currentConfigDir.getName()) + "_backup_\\d{4}-\\d{2}-\\d{2}_\\d{2}-\\d{2}-\\d{2}_\\d{3}")); Arrays.sort(backupDirectories, Comparator.comparing(File::getName)); for (int i = 0; i < backupDirectories.length - 5; i++) { File dirToDelete = backupDirectories[i];