]> git.eshelyaron.com Git - emacs.git/commitdiff
(backup-buffer-copy): Revert 2007-08-22 change.
authorGlenn Morris <rgm@gnu.org>
Fri, 24 Aug 2007 03:07:45 +0000 (03:07 +0000)
committerGlenn Morris <rgm@gnu.org>
Fri, 24 Aug 2007 03:07:45 +0000 (03:07 +0000)
lisp/ChangeLog
lisp/files.el

index f1b082c618fe1e2b2f549186264e457ceb18ea4f..cac2d1c269f6e3339d14d0ee16c12df6ac733e9e 100644 (file)
@@ -1,3 +1,8 @@
+2007-08-24  Ulrich Mueller  <ulm@gentoo.org>  (tiny change)
+
+       * files.el (backup-buffer-copy): Don't wrap delete in
+       condition-case, only try to delete if file exists.
+
 2007-08-24  Glenn Morris  <rgm@gnu.org>
 
        * files.el (backup-buffer-copy): Revert 2007-08-22 change.
index 1cc46684d4b88b18c9897a671ff486da4abcd7d9..614cad467ef77527c2b516311c6af377594fa6d7 100644 (file)
@@ -3175,9 +3175,6 @@ BACKUPNAME is the backup file name, which is the old file renamed."
   (let ((umask (default-file-modes))
        (dir (or (file-name-directory to-name)
                 default-directory)))
-    ;; Can't delete or create files in a read-only directory.
-    (unless (file-writable-p dir)
-      (signal 'file-error (list "Directory is not writable" dir)))
     (unwind-protect
        (progn
          ;; Create temp files with strict access rights.  It's easy to
@@ -3186,11 +3183,6 @@ BACKUPNAME is the backup file name, which is the old file renamed."
          (set-default-file-modes ?\700)
          (while (condition-case ()
                     (progn
-                      ;; If we allow for the possibility of something
-                      ;; creating the file between delete and copy
-                      ;; (below), we must also allow for the
-                      ;; possibility of something deleting it between
-                      ;; a file-exists-p check and a delete.
                       (condition-case nil
                           (delete-file to-name)
                         (file-error nil))
@@ -3199,8 +3191,6 @@ BACKUPNAME is the backup file name, which is the old file renamed."
                   (file-already-exists t))
            ;; The file was somehow created by someone else between
            ;; `delete-file' and `copy-file', so let's try again.
-           ;; Does that every actually happen in practice?
-           ;; This is a potential infloop, which seems bad...
            ;; rms says "I think there is also a possible race
            ;; condition for making backup files" (emacs-devel 20070821).
            nil))