[Mew-dist 12109] a patch not to reply in draft folder

ksakai at example.com ksakai at example.com
2000年 1月 24日 (月) 11:49:49 JST


mew-1.95b18 で +draft 内で "a" (mew-summary-reply) を押すとエラーが発
生します。また、一旦、このエラー発生すると、他のバッファでも "a" や 
"w" (mew-summary-send) でエラーが発生するようになり、一切メールが書け
なくなります。

これは、mew-summary-reply() で

  (let (...
    (draft mew-folder-new-message mew-draft-folder)

を実行していますが、この後にエラーが発生すると draft ファイルをバッファ
内で抱えているにもかかわらず実際のファイルは存在しないという状況のため、

  (file-exists-p buffer-auto-save-file-name)

を実行している行で buffer-auto-save-file-name が nil のためにエラーが
発生するという状況です。

とりあえず、+draft 内で "a" を押しても reply できないようにするための
パッチを付けておきますが、

・(意味があるとは思えないですが) +draft のメッセージに対しても reply 
  できるようにする。

・mew-summary-reply() 内でエラーが発生しても、その後の操作に問題が出な
  いようにする。

などの対応も考えられると思います。

# パッチの量を減らすために、インデントは変更していません。
-- 
酒井 清隆 (E-mail: ksakai at example.com)
-------------- next part --------------
Index: mew-summary.el
===================================================================
RCS file: /home/ksakai/cvsroot/mew-1.95b18/mew-summary.el,v
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 mew-summary.el
--- mew-summary.el	2000/01/24 01:11:24	1.1.1.1
+++ mew-summary.el	2000/01/24 02:29:27
@@ -1158,9 +1158,12 @@
    (mew-summary-toggle-disp-msg 'on)
    (mew-current-set-window-config)
    (let ((buf (buffer-name))
-	 (draft (mew-folder-new-message mew-draft-folder))
+	 draft
 	 from reply-to to cc newsgroups subject in-reply-to references
 	 cbuf encrypted fromme)
+     (if (string= buf mew-draft-folder)
+	 (message "Cannot reply to draft message")
+     (setq draft (mew-folder-new-message mew-draft-folder))
      (mew-summary-prepare-draft
       (mew-summary-prepare-three-windows)
       (mew-draft-find-and-switch draft t)
@@ -1261,7 +1264,7 @@
 	    (goto-char (mew-header-end))
 	    (forward-line)))
       (mew-draft-mode encrypted)
-      (run-hooks 'mew-draft-mode-newdraft-hook)))))
+      (run-hooks 'mew-draft-mode-newdraft-hook))))))
 
 (defun mew-summary-reply-with-citation (&optional onlytofrom)
   "Answer to this message. A new draft is prepared in Draft mode. 


Mew-dist メーリングリストの案内