From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Drew Adams" Newsgroups: gmane.emacs.bugs Subject: bug#5923: 23.1.95; minibuffer-message discards input events Date: Tue, 20 Apr 2010 16:45:45 -0700 Message-ID: <45AB7455D0FD4FCC9ED735A11D8CCEF0@us.oracle.com> References: <6ED90800C89F408BB0C3F86660BB4C10@us.oracle.com><7C90907943E64115BA7CFABFB144BD24@us.oracle.com><497D764814894831A571BD283D21B9DA@us.oracle.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Trace: dough.gmane.org 1271807995 4715 80.91.229.12 (20 Apr 2010 23:59:55 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Tue, 20 Apr 2010 23:59:55 +0000 (UTC) Cc: 5923@debbugs.gnu.org To: "'Stefan Monnier'" Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Wed Apr 21 01:59:54 2010 connect(): No such file or directory Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1O4NM6-0007lJ-Tm for geb-bug-gnu-emacs@m.gmane.org; Wed, 21 Apr 2010 01:59:53 +0200 Original-Received: from localhost ([127.0.0.1]:51809 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1O4NLl-0000mq-Gn for geb-bug-gnu-emacs@m.gmane.org; Tue, 20 Apr 2010 19:59:29 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1O4NLf-0000k5-BI for bug-gnu-emacs@gnu.org; Tue, 20 Apr 2010 19:59:23 -0400 Original-Received: from [140.186.70.92] (port=36720 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1O4NLd-0000gw-FU for bug-gnu-emacs@gnu.org; Tue, 20 Apr 2010 19:59:22 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1O4NLa-0003Ns-0z for bug-gnu-emacs@gnu.org; Tue, 20 Apr 2010 19:59:21 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:33896) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1O4NLZ-0003Nj-UP for bug-gnu-emacs@gnu.org; Tue, 20 Apr 2010 19:59:17 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.69) (envelope-from ) id 1O4N9h-00044C-Rr; Tue, 20 Apr 2010 19:47:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: "Drew Adams" Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-To: owner@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 20 Apr 2010 23:47:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 5923 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 5923-submit@debbugs.gnu.org id=B5923.127180718215621 (code B ref 5923); Tue, 20 Apr 2010 23:47:01 +0000 Original-Received: (at 5923) by debbugs.gnu.org; 20 Apr 2010 23:46:22 +0000 Original-Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1O4N93-00043u-Q5 for submit@debbugs.gnu.org; Tue, 20 Apr 2010 19:46:21 -0400 Original-Received: from rcsinet10.oracle.com ([148.87.113.121]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1O4N91-00043p-Uk for 5923@debbugs.gnu.org; Tue, 20 Apr 2010 19:46:20 -0400 Original-Received: from rcsinet13.oracle.com (rcsinet13.oracle.com [148.87.113.125]) by rcsinet10.oracle.com (Switch-3.4.2/Switch-3.4.1) with ESMTP id o3KNkB6g008178 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Tue, 20 Apr 2010 23:46:12 GMT Original-Received: from acsmt354.oracle.com (acsmt354.oracle.com [141.146.40.154]) by rcsinet13.oracle.com (Switch-3.4.2/Switch-3.4.1) with ESMTP id o3KLsmNE010964; Tue, 20 Apr 2010 23:46:11 GMT Original-Received: from abhmt004.oracle.com by acsmt354.oracle.com with ESMTP id 176097851271807145; Tue, 20 Apr 2010 16:45:45 -0700 Original-Received: from dradamslap1 (/10.175.219.144) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Tue, 20 Apr 2010 16:45:44 -0700 X-Mailer: Microsoft Office Outlook 11 In-Reply-To: Thread-Index: AcrbeN6P7ekC4+9VQH619MkvIjLwtAAFxw3wAPw1QPAAAXc+EABGGmQwABBeiBA= X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5579 X-Auth-Type: Internal IP X-Source-IP: rcsinet13.oracle.com [148.87.113.125] X-CT-RefId: str=0001.0A090205.4BCE3CC5.0150:SCFMA4539811,ss=1,fgs=0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list Resent-Date: Tue, 20 Apr 2010 19:47:01 -0400 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:36388 Archived-At: > Debugging `sit-for' a bit indicates that `input-pending-p' > does indeed return nil when it should return non-nil in this > context (after user input). The final `cond' branch is taken > in the `sit-for' code, instead of the `input-pending-p' branch. Actually, the problem is here in `sit-for': (let ((read (read-event nil nil seconds))) (or (null read) (progn ;; If last command was a prefix arg, e.g. C-u, push this event onto ;; unread-command-events as (t . EVENT) so it will be added to ;; this-command-keys by read-key-sequence. (if (eq overriding-terminal-local-map universal-argument-map) (setq read (cons t read))) (push read unread-command-events) nil)))))) Since the value of `overriding-terminal-local-map' is not `universal-argument-map' in my case, it fails to treat any input received properly. Since this needs to span several commands (digit-argument etc.), I can't just bind `overriding-terminal-local-map' instead of setting it. I guess my options are to either set it to my map and later unset it or just redefine `sit-for' so that it uses a test like this instead: (if (memq overriding-terminal-local-map '(universal-argument-map icicle-universal-argument-map)) (setq read (cons t read))) Or redefine `universal-argument-map' to use commands that act differently depending on the mode etc. Better suggestions are welcome. None that I've thought of so far are appealing. How about using a different kind of test in the vanilla code, one that would give users some flexibility here, instead of hard-coding an eq test against a specific keymap?