[mew-dist 28245] Re: smtp送信失敗で Dcc: が消える
Kazu Yamamoto ( 山本和彦 )
kazu at example.com
2008年 3月 31日 (月) 12:20:44 JST
水口さん、
遅くなってすいません。
> ・+queue でメッセージ内容を Message バッファに表示させると、Dcc: も
> Fcc: も X-Mew: も無い。
>
> ・ mqiファイルは "[nil nil nil nil nil nil nil nil]" の 1行だけになる。
分ったような気がします。
水口さんは、Submission → SMTP のフォールバック機能を設定しており、いつ
もフォールバックしているのだと思います。(つまり、毎回無駄なことをしてい
る。)
Submission のときのプロセス名と SMTP のときのプロセス名は異なります。
フォールバックして、SMTP のときにエラーが発生した場合、SMTP のときのプ
ロセス名からプロセスを割り出して、状態を保存する必要があります。しかし、
今の Mew だと Submission のときのプロセス名を使っているように思えます。
なので、状態が全部 nil になるのでしょう。
以下にパッチをつけますので、試して下さい。
うまくいったら、水口さんの設定はフォールバックしないように戻すのがいい
かと思います。
なお最近、フォールバックというアイディアは、あまりよくないという気がし
ているので、この機能は削るかもしれません。
--かず
Index: mew-smtp.el
===================================================================
RCS file: /cvsroot/mew/mew/mew-smtp.el,v
retrieving revision 1.148
diff -c -r1.148 mew-smtp.el
*** mew-smtp.el 18 Mar 2008 03:04:58 -0000 1.148
--- mew-smtp.el 31 Mar 2008 03:19:37 -0000
***************
*** 25,31 ****
"qfld" "messages"
;; parameters used internally and should be initialized
"string" "error" "auth-selected" "timer" "cont" "from" "sender"
! "done" "imapp" "capa" "fallback"))
(mew-info-defun "mew-smtp-" mew-smtp-info-list)
--- 25,31 ----
"qfld" "messages"
;; parameters used internally and should be initialized
"string" "error" "auth-selected" "timer" "cont" "from" "sender"
! "done" "imapp" "capa" "fallback" "fallbacked"))
(mew-info-defun "mew-smtp-" mew-smtp-info-list)
***************
*** 513,518 ****
--- 513,519 ----
(mew-smtp-set-auth-list pnm (mew-smtp-auth-list case))
(mew-smtp-set-status pnm "greeting")
(mew-smtp-set-fallback pnm fallback)
+ (mew-smtp-set-fallbacked pnm fallbacked)
;;
(set-process-buffer process nil)
(set-process-sentinel process 'mew-smtp-sentinel)
***************
*** 613,618 ****
--- 614,620 ----
(done (mew-smtp-get-done pnm))
(imapp (mew-smtp-get-imapp pnm))
(error (mew-smtp-get-error pnm))
+ (fallbacked (mew-smtp-get-fallbacked pnm))
(sshpro (mew-smtp-get-ssh-process pnm))
(sslpro (mew-smtp-get-ssl-process pnm)))
(save-excursion
***************
*** 623,629 ****
;; A message file is not inserted at the beginning of the SMTP
;; session.
(set-buffer buf)
! (mew-smtp-queue case error))
(mew-smtp-log pnm error))
(done
(message "Sending in background...done"))
--- 625,631 ----
;; A message file is not inserted at the beginning of the SMTP
;; session.
(set-buffer buf)
! (mew-smtp-queue case error fallbacked))
(mew-smtp-log pnm error))
(done
(message "Sending in background...done"))
***************
*** 631,637 ****
(if (null buf)
(message "SMTP connection is lost")
(set-buffer buf)
! (mew-smtp-queue case "SMTP connection is lost"))))
(mew-info-clean-up pnm)
(if (and (processp sshpro) (not mew-ssh-keep-connection))
(process-send-string sshpro "exit\n"))
--- 633,639 ----
(if (null buf)
(message "SMTP connection is lost")
(set-buffer buf)
! (mew-smtp-queue case "SMTP connection is lost" fallbacked))))
(mew-info-clean-up pnm)
(if (and (processp sshpro) (not mew-ssh-keep-connection))
(process-send-string sshpro "exit\n"))
***************
*** 646,654 ****
;;; Queuing
;;;
! (defun mew-smtp-queue (case err)
;; Must be in a buffer where a message is contained.
! (let* ((pnm (mew-smtp-info-name case))
(qfld (mew-queue-folder case))
(oname (buffer-name))
(work (buffer-file-name))
--- 648,656 ----
;;; Queuing
;;;
! (defun mew-smtp-queue (case err &optional fallbacked)
;; Must be in a buffer where a message is contained.
! (let* ((pnm (mew-smtp-info-name case fallbacked))
(qfld (mew-queue-folder case))
(oname (buffer-name))
(work (buffer-file-name))
Mew-dist メーリングリストの案内