(mm-make-temp-file): Don't catch file-error in Emacs.
authorKatsumi Yamaoka <yamaoka@jpl.org>
Wed, 15 Feb 2006 08:39:17 +0000 (08:39 +0000)
committerKatsumi Yamaoka <yamaoka@jpl.org>
Wed, 15 Feb 2006 08:39:17 +0000 (08:39 +0000)
lisp/ChangeLog
lisp/mm-util.el

index a05faed..2f6084d 100644 (file)
@@ -1,3 +1,7 @@
+2006-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
+
+       * mm-util.el (mm-make-temp-file): Don't catch file-error in Emacs.
+
 2006-02-14  Reiner Steib  <Reiner.Steib@gmx.de>
 
        * spam.el (spam-check-spamassassin-headers): Adapt format for
@@ -22,7 +26,7 @@
        * gnus-draft.el (gnus-draft-send): Replace message-narrow-to-head
        with message-narrow-to-headers.
        (gnus-draft-setup): Narrow to header to run message-fetch-field.
-       (gnus-draft-check-draft-articles articles): New function.
+       (gnus-draft-check-draft-articles): New function.
        (gnus-draft-edit-message, gnus-draft-send-message): Use it.
 
 2006-02-13  Reiner Steib  <Reiner.Steib@gmx.de>
index 395c4db..3d2739a 100644 (file)
@@ -1074,7 +1074,7 @@ If SUFFIX is non-nil, add that at the end of the file name."
            ;; loosen them later, whereas it's impossible to close the
            ;; time-window of loose permissions otherwise.
            (set-default-file-modes 448)
-           (while (condition-case ()
+           (while (condition-case err
                       (progn
                         (setq file
                               (make-temp-name
@@ -1089,8 +1089,8 @@ If SUFFIX is non-nil, add that at the end of the file name."
                         (if dir-flag
                             (make-directory file)
                           (if (featurep 'xemacs)
-                              ;; NOTE: This is unsafe if an XEmacs user
-                              ;; doesn't use a secure temp directory.
+                              ;; NOTE: This is unsafe if XEmacs users
+                              ;; don't use a secure temp directory.
                               (if (file-exists-p file)
                                   (signal 'file-already-exists
                                           (list "File exists" file))
@@ -1099,8 +1099,11 @@ If SUFFIX is non-nil, add that at the end of the file name."
                                           nil 'excl)))
                         nil)
                     (file-already-exists t)
-                    ;; The XEmacs version of `make-directory' issues it.
-                    (file-error t))
+                    ;; The XEmacs version of `make-directory' issues
+                    ;; `file-error'.
+                    (file-error (or (and (featurep 'xemacs)
+                                         (file-exists-p file))
+                                    (signal (car err) (cdr err)))))
              ;; the file was somehow created by someone else between
              ;; `make-temp-name' and `write-region', let's try again.
              nil)