Mercurial > emacs
changeset 76347:2a5ebeee48fc
(find-file-noselect): No error if file no longer exists.
Display a message and avoid other questions.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Mon, 05 Mar 2007 18:46:36 +0000 |
parents | 82bf47521df9 |
children | 05d93f5e8286 |
files | lisp/files.el |
diffstat | 1 files changed, 6 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/files.el Mon Mar 05 18:39:31 2007 +0000 +++ b/lisp/files.el Mon Mar 05 18:46:36 2007 +0000 @@ -1474,11 +1474,12 @@ (error "Aborted")) (if buf ;; We are using an existing buffer. - (progn + (let (nonexistent) (or nowarn (verify-visited-file-modtime buf) (cond ((not (file-exists-p filename)) - (error "File %s no longer exists!" filename)) + (setq nonexistent t) + (message "File %s no longer exists!" filename)) ;; Certain files should be reverted automatically ;; if they have changed on disk and not in the buffer. ((and (not (buffer-modified-p buf)) @@ -1515,7 +1516,8 @@ ;; writable and vice versa, but if the buffer agrees ;; with the new state of the file, that is ok too. (let ((read-only (not (file-writable-p buffer-file-name)))) - (unless (or (eq read-only buffer-file-read-only) + (unless (or nonexistent + (eq read-only buffer-file-read-only) (eq read-only buffer-read-only)) (when (or nowarn (let ((question @@ -1528,6 +1530,7 @@ (when (and (not (eq (not (null rawfile)) (not (null find-file-literally)))) + (not nonexistent) ;; It is confusing to ask whether to visit ;; non-literally if they have the file in ;; hexl-mode.