JAL-3628 Fix for slightly incorrect boolean usage to determine success when rolling...
[jalview.git] / src / jalview / io / BackupFiles.java
index 91cc5fa..11d1a16 100644 (file)
@@ -132,10 +132,12 @@ public class BackupFiles
         String tempfilename = file.getName();
         File tempdir = file.getParentFile();
         Cache.log.debug(
-                "BACKUPFILES [file!=null] attempting to create temp file "
+                "BACKUPFILES [file!=null] attempting to create temp file for "
                         + tempfilename + " in dir " + tempdir);
         temp = File.createTempFile(tempfilename,
                 TEMP_FILE_EXT + newTempFileSuffix, tempdir);
+        Cache.log.debug(
+                "BACKUPFILES using temp file " + temp.getAbsolutePath());
       }
       else
       {
@@ -162,10 +164,14 @@ public class BackupFiles
   public static void classInit()
   {
     Cache.log.debug("BACKUPFILES classInit");
-    setEnabled(Cache.getDefault(ENABLED, !Platform.isJS()));
+    boolean e = Cache.getDefault(ENABLED, !Platform.isJS());
+    setEnabled(e);
+    Cache.log.debug("BACKUPFILES " + (e ? "enabled" : "disabled"));
     BackupFilesPresetEntry bfpe = BackupFilesPresetEntry
             .getSavedBackupEntry();
+    Cache.log.debug("BACKUPFILES preset scheme " + bfpe.toString());
     setConfirmDelete(bfpe.confirmDelete);
+    Cache.log.debug("BACKUPFILES confirm delete " + bfpe.confirmDelete);
   }
 
   public static void setEnabled(boolean flag)
@@ -425,7 +431,9 @@ public class BackupFiles
           {
             if (previousFile != null)
             {
-              ret = ret && moveFileToFile(backupfile_n, previousFile);
+              // using boolean '&' instead of '&&' as don't want moveFileToFile
+              // attempt to be conditional (short-circuit)
+              ret = ret & moveFileToFile(backupfile_n, previousFile);
             }
           }
 
@@ -543,10 +551,12 @@ public class BackupFiles
                     suffix, digits);
     Cache.log.debug("BACKUPFILES Moving old file [" + file
             + "] to latestBackupFilename [" + latestBackupFilename + "]");
-    ret |= moveFileToFile(file, new File(latestBackupFilename));
-    Cache.log.debug("BACKUPFILES moving " + latestBackupFilename + " to "
-            + file + " was " + (ret ? "" : "NOT ") + "successful");
-
+    // using boolean '&' instead of '&&' as don't want moveFileToFile attempt to
+    // be conditional (short-circuit)
+    ret = ret & moveFileToFile(file, new File(latestBackupFilename));
+    Cache.log.debug(
+            "BACKUPFILES moving " + file + " to " + latestBackupFilename
+                    + " was " + (ret ? "" : "NOT ") + "successful");
     if (tidyUp)
     {
       Cache.log.debug("BACKUPFILES tidying up files");
@@ -891,7 +901,7 @@ public class BackupFiles
               + " to " + newFile.getAbsolutePath());
       Files.move(oldPath, newPath, StandardCopyOption.REPLACE_EXISTING);
       ret = true;
-      Cache.log.debug("BACKUPFILES move seemse to have succeeded");
+      Cache.log.debug("BACKUPFILES move seems to have succeeded");
     } catch (IOException e)
     {
       Cache.log.warn("Could not move file '" + oldPath.toString() + "' to '"