[Mew-dist 12597] Re: password 入力に失敗すると imget が終了しません
Hideyuki SHIRAI ( 白井秀行 )
shirai at example.com
2000年 3月 3日 (金) 20:13:54 JST
From: Mori Kouji <mori at example.com> さん曰く
Subject: [Mew-dist 12596] password 入力に失敗すると imget が終了しません
Message-ID: <80putcx18u.fsf at example.com>
Date: Fri, 3 Mar 2000 10:59:17 +0900
mori> mew-1.95b28 で password を入力するときに、間違えて
mori> 変なキー (カーソルキーなど) を押してしまうと、
mori> error in process filter: Non-character input-even
mori> と表示され、imget が動いたままになって、imget を直接 kill しないと
mori> いけないはめになります。emacs-20.5 でのことですが、他のとこでは
mori> 問題ないのでしょうか?
# C-cC-k で imget は kill されますよね?
Emacs-20.6 なのですが、同様になりました。XEmacs をためしたら、相
当変なことをしない限り大丈夫みたいです。
mori> Signaling: (error "Non-character input-event")
mori> read-char(nil t)
mori> read-passwd("Enter password (yashoda) : ")
mori> mew-read-passwd("Enter password (yashoda) : ")
subr.el の read-passwd でキー入力を待っている read-char が
If the user generates an event which is not a character (i.e. a mouse
click or function key event), `read-char' signals an error. As an
exception, switch-frame events are put off until non-ASCII events can
be read.
If you want to read non-character events, or ignore them, call
`read-event' or `read-char-exclusive' instead.
とのことで、error になってしまいます。というわけで、こういう現象
を退避するなら、
1. Mew の自前の read-passwd を使うように元に戻す。
read-char-exclusive を使っているから大丈夫。
2. 以下のパッチで imget を error にして救う。passwd が "" なんて
人はいませんよね?
かなぁ。
--
白井秀行 (mailto:shirai at example.com)
--- mew-minibuf.el.orig Wed Jan 26 22:34:55 2000
+++ mew-minibuf.el Fri Mar 3 19:47:29 2000
@@ -432,7 +432,9 @@
(defun mew-read-passwd (prompt)
(let ((inhibit-input-event-recording t))
(if (fboundp 'read-passwd)
- (read-passwd prompt)
+ (condition-case err
+ (read-passwd prompt)
+ (error ""))
(let ((pass "")
(c 0)
(echo-keystrokes 0)
Mew-dist メーリングリストの案内