diff lisp/files.el @ 282:c42ec1d1cded r21-0b39

Import from CVS: tag r21-0b39
author cvs
date Mon, 13 Aug 2007 10:33:18 +0200
parents 7df0dd720c89
children 558f606b08ae
line wrap: on
line diff
--- a/lisp/files.el	Mon Aug 13 10:32:23 2007 +0200
+++ b/lisp/files.el	Mon Aug 13 10:33:18 2007 +0200
@@ -1086,13 +1086,18 @@
 		   (setq buffer-read-only nil)
 		   ;; XEmacs
 		   (or (file-exists-p (file-name-directory buffer-file-name))
-		       (if (yes-or-no-p
-			    (format
-			     "The directory containing %s does not exist.  Create? "
-			     (abbreviate-file-name buffer-file-name)))
-			   (make-directory (file-name-directory
-					    buffer-file-name)
-					   t)))
+		       (condition-case nil
+			   (if (yes-or-no-p
+				(format
+				 "\
+The directory containing %s does not exist.  Create? "
+				 (abbreviate-file-name buffer-file-name)))
+			       (make-directory (file-name-directory
+						buffer-file-name)
+					       t))
+			 (quit
+			  (kill-buffer (current-buffer))
+			  (error "Canceled"))))
 		   nil))))
       (if msg
 	  (progn