Jelajahi Sumber

Fix rotated logger naming and backup deletion

Ruslan Mustakov 8 tahun lalu
induk
melakukan
27b537cfca
1 mengubah file dengan 3 tambahan dan 3 penghapusan
  1. 3 3
      core/io/logger.cpp

+ 3 - 3
core/io/logger.cpp

@@ -110,7 +110,7 @@ void RotatedFileLogger::close_file() {
 void RotatedFileLogger::clear_old_backups() {
 	int max_backups = max_files - 1; // -1 for the current file
 
-	String basename = base_path.get_basename();
+	String basename = base_path.get_file().get_basename();
 	String extension = "." + base_path.get_extension();
 
 	DirAccess *da = DirAccess::open(base_path.get_base_dir());
@@ -122,7 +122,7 @@ void RotatedFileLogger::clear_old_backups() {
 	String f = da->get_next();
 	Set<String> backups;
 	while (f != String()) {
-		if (!da->current_is_dir() && f.begins_with(basename) && f.ends_with(extension) && f != base_path) {
+		if (!da->current_is_dir() && f.begins_with(basename) && f.ends_with(extension) && f != base_path.get_file()) {
 			backups.insert(f);
 		}
 		f = da->get_next();
@@ -149,7 +149,7 @@ void RotatedFileLogger::rotate_file() {
 			char timestamp[21];
 			OS::Date date = OS::get_singleton()->get_date();
 			OS::Time time = OS::get_singleton()->get_time();
-			sprintf(timestamp, "-%04d-%02d-%02d-%02d-%02d-%02d", date.year, date.month, date.day + 1, time.hour, time.min, time.sec);
+			sprintf(timestamp, "-%04d-%02d-%02d-%02d-%02d-%02d", date.year, date.month, date.day, time.hour, time.min, time.sec);
 
 			String backup_name = base_path.get_basename() + timestamp + "." + base_path.get_extension();