[mew-dist 22997] POP で取り込めないメールが発生した場合のお願い

Kazu Yamamoto ( 山本和彦 ) kazu at example.com
2003年 1月 27日 (月) 12:25:52 JST


POP で取り込めないメールが発生した場合のお願いをまとめておきます。

原因は、POP サーバから変な文字コードを送られて、Emacs の内部コードが狂
い process-send-string() が狂うののだと思われます。

POP で取り込めないメールが発生する人へのお願い:

まっさらな Mew (anon cvs でも mew-3.1.5x でも OK)に、以下のパッチを当
てて下さい。

取り込めないメールが発生したら、
	(setq mew-pop-debug-case 1)
として、取り込めるか実験して下さい。

取り込めないなら、1 を 2 に変えて実験。さらに、3 でも実験して下さい。

取り込めると、nil に戻し、再び取り込めないメールが発生するまで待ちます。
その後、2 や 3 でも実験して下さい。

それで、1、2、3 それぞれに対し、取り込めるか以下かを教えて下さい。

おそらく、1 と 2 では取り込めます。3 はあまり自信ないです。でも、3 で
取り込めれば、これを解決策として採用したいです。

--かず

Index: mew-pop.el
===================================================================
RCS file: /cvsroot/mew/mew/mew-pop.el,v
retrieving revision 1.146
diff -c -r1.146 mew-pop.el
*** mew-pop.el	2003/01/23 06:49:38	1.146
--- mew-pop.el	2003/01/27 03:21:33
***************
*** 506,514 ****
        (goto-char (point-max))
        (insert (format "\n<%s>\n%s\n" label string)))))
  
  (defun mew-pop-process-send-string (pro &rest args)
!   (let ((str (apply 'format args)))
!     (process-send-string pro (concat str mew-cs-eol))))
  
  (defun mew-pop-scan-header ()
    (goto-char (point-min))
--- 506,534 ----
        (goto-char (point-max))
        (insert (format "\n<%s>\n%s\n" label string)))))
  
+ (defvar mew-pop-debug-case nil)
+ 
  (defun mew-pop-process-send-string (pro &rest args)
!   (cond
!    ((eq mew-pop-debug-case 1)
!     (with-temp-buffer
!       (insert (apply 'format args))
!       (insert mew-cs-eol)
!       (process-send-region pro (point-min) (point-max))))
!    ((eq mew-pop-debug-case 2)
!     (with-temp-buffer
!       (mew-set-buffer-multibyte nil) 
!       (insert (apply 'format args))
!       (insert mew-cs-eol)
!       (process-send-region pro (point-min) (point-max))))
!    ((eq mew-pop-debug-case 3)
!     (let ((str (concat (apply 'format args) mew-cs-eol)))
!       (if (fboundp 'string-as-unibyte)
! 	  (setq str (string-as-unibyte str)))
!       (process-send-string pro str)))
!    (t
!     (let ((str (apply 'format args)))
!       (process-send-string pro (concat str mew-cs-eol))))))
  
  (defun mew-pop-scan-header ()
    (goto-char (point-min))



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