[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] trunk r113718: lisp/gnus/mm-decode.el (mm-display-external
From: |
Katsumi Yamaoka |
Subject: |
[Emacs-diffs] trunk r113718: lisp/gnus/mm-decode.el (mm-display-external): Work for xdg-open |
Date: |
Tue, 06 Aug 2013 13:53:07 +0000 |
User-agent: |
Bazaar (2.6b2) |
------------------------------------------------------------
revno: 113718
revision-id: address@hidden
parent: address@hidden
committer: Katsumi Yamaoka <address@hidden>
branch nick: trunk
timestamp: Tue 2013-08-06 13:52:59 +0000
message:
lisp/gnus/mm-decode.el (mm-display-external): Work for xdg-open
modified:
lisp/gnus/ChangeLog changelog-20091113204419-o5vbwnq5f7feedwu-1433
lisp/gnus/mm-decode.el
mmdecode.el-20091113204419-o5vbwnq5f7feedwu-1971
=== modified file 'lisp/gnus/ChangeLog'
--- a/lisp/gnus/ChangeLog 2013-08-05 14:15:37 +0000
+++ b/lisp/gnus/ChangeLog 2013-08-06 13:52:59 +0000
@@ -1,3 +1,10 @@
+2013-08-06 Katsumi Yamaoka <address@hidden>
+
+ * mm-decode.el (mm-display-external): Bind process-connection-type to
+ nil; don't delete a temp file immediately even if a viewer finishes,
+ since it may be a shell script, like xdg-open, that launches a real
+ viewer program belatedly.
+
2013-08-05 Dave Abrahams <address@hidden>
* gnus-int.el (gnus-warp-to-article): Allow warping in all groups so
=== modified file 'lisp/gnus/mm-decode.el'
--- a/lisp/gnus/mm-decode.el 2013-08-01 22:58:40 +0000
+++ b/lisp/gnus/mm-decode.el 2013-08-06 13:52:59 +0000
@@ -962,7 +962,7 @@
(let ((command (mm-mailcap-command
method file (mm-handle-type handle))))
(unwind-protect
- (progn
+ (let ((process-connection-type nil))
(start-process "*display*"
(setq buffer
(generate-new-buffer " *mm*"))
@@ -984,12 +984,13 @@
(delete-directory (file-name-directory file)))))
(lambda (process state)
(when (eq (process-status process) 'exit)
- (condition-case nil
- (delete-file file)
- (error))
- (condition-case nil
- (delete-directory (file-name-directory file))
- (error))
+ (run-at-time
+ 10.0 nil
+ (lambda ()
+ (ignore-errors
+ (delete-file file))
+ (ignore-errors
+ (delete-directory (file-name-directory file)))))
(when (buffer-live-p outbuf)
(with-current-buffer outbuf
(let ((buffer-read-only nil)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] trunk r113718: lisp/gnus/mm-decode.el (mm-display-external): Work for xdg-open,
Katsumi Yamaoka <=