--- lisp/files.el 8 Aug 2007 14:06:01 -0000 1.896.2.15 +++ lisp/files.el 22 Aug 2007 03:47:35 -0000 1.896.2.16 @@ -3120,7 +3120,12 @@ (file-error nil)))))) (defun backup-buffer-copy (from-name to-name modes) - (let ((umask (default-file-modes))) + (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