aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristopher Schmidt2013-01-30 09:44:46 +0000
committerKatsumi Yamaoka2013-01-30 09:44:46 +0000
commitdc39b96aae823fc9ee3d4dd50ce4160f00e504f2 (patch)
treeec092668f8934998f4a43ebc3944f2b90b52fe0b
parent8bc8712eddbac53649ce3b5b0d1ce5852bca394f (diff)
downloademacs-dc39b96aae823fc9ee3d4dd50ce4160f00e504f2.tar.gz
emacs-dc39b96aae823fc9ee3d4dd50ce4160f00e504f2.zip
lisp/gnus/mm-decode.el (mm-save-part): Handle invalid read-file-name results
-rw-r--r--lisp/gnus/ChangeLog4
-rw-r--r--lisp/gnus/mm-decode.el28
2 files changed, 24 insertions, 8 deletions
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index 745e0ede5a8..f224752a334 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -1,3 +1,7 @@
12013-01-30 Christopher Schmidt <christopher@ch.ristopher.com>
2
3 * mm-decode.el (mm-save-part): Handle invalid read-file-name results.
4
12013-01-21 Lars Magne Ingebrigtsen <larsi@gnus.org> 52013-01-21 Lars Magne Ingebrigtsen <larsi@gnus.org>
2 6
3 * gnus-sum.el (gnus-summary-read-group-1): Protect against not being 7 * gnus-sum.el (gnus-summary-read-group-1): Protect against not being
diff --git a/lisp/gnus/mm-decode.el b/lisp/gnus/mm-decode.el
index b5e4d3e38e8..812ee7396dd 100644
--- a/lisp/gnus/mm-decode.el
+++ b/lisp/gnus/mm-decode.el
@@ -1298,14 +1298,26 @@ PROMPT overrides the default one used to ask user for a file name."
1298 (when filename 1298 (when filename
1299 (setq filename (gnus-map-function mm-file-name-rewrite-functions 1299 (setq filename (gnus-map-function mm-file-name-rewrite-functions
1300 (file-name-nondirectory filename)))) 1300 (file-name-nondirectory filename))))
1301 (setq file 1301 (while
1302 (read-file-name 1302 (progn
1303 (or prompt 1303 (setq file
1304 (format "Save MIME part to (default %s): " 1304 (read-file-name
1305 (or filename ""))) 1305 (or prompt
1306 (or mm-default-directory default-directory) 1306 (format "Save MIME part to (default %s): "
1307 (expand-file-name (or filename "") 1307 (or filename "")))
1308 (or mm-default-directory default-directory)))) 1308 (or mm-default-directory default-directory)
1309 (expand-file-name (or filename "")
1310 (or mm-default-directory default-directory))))
1311 (cond ((or (not file) (equal file ""))
1312 (message "Please enter a file name")
1313 t)
1314 ((and (file-directory-p file)
1315 (not filename))
1316 (message "Please enter a non-directory file name")
1317 t)
1318 (t nil)))
1319 (sit-for 2)
1320 (discard-input))
1309 (if (file-directory-p file) 1321 (if (file-directory-p file)
1310 (setq file (expand-file-name filename file)) 1322 (setq file (expand-file-name filename file))
1311 (setq file (expand-file-name 1323 (setq file (expand-file-name