From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.bugs Subject: bug#29104: AW: bug#29104: [PATCH]: xterm-mouse-mode clicks in the modeline dont use the keymap properties of the modeline strings Date: Sat, 18 Nov 2017 23:24:49 -0500 Message-ID: References: <87zi869koz.fsf@t-online.de> <877ev3nf5b.fsf@t-online.de> <83375lp2ti.fsf@gnu.org> <1510581474048.7762584.ec34b569bff8873067a3b84e08b73b2215d5dd1a@spica.telekom.de> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1511065577 8560 195.159.176.226 (19 Nov 2017 04:26:17 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sun, 19 Nov 2017 04:26:17 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) Cc: "29104@debbugs.gnu.org" <29104-done@debbugs.gnu.org> To: "olaf.rogalsky\@t-online.de" Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sun Nov 19 05:26:13 2017 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eGHBK-0001mX-3k for geb-bug-gnu-emacs@m.gmane.org; Sun, 19 Nov 2017 05:26:10 +0100 Original-Received: from localhost ([::1]:51897 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eGHBR-0004dE-JK for geb-bug-gnu-emacs@m.gmane.org; Sat, 18 Nov 2017 23:26:17 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:49386) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eGHBH-0004cH-Lg for bug-gnu-emacs@gnu.org; Sat, 18 Nov 2017 23:26:09 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eGHBC-0002fh-OM for bug-gnu-emacs@gnu.org; Sat, 18 Nov 2017 23:26:07 -0500 Original-Received: from debbugs.gnu.org ([208.118.235.43]:38027) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1eGHBC-0002fM-LN for bug-gnu-emacs@gnu.org; Sat, 18 Nov 2017 23:26:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1eGHBC-00069X-CT for bug-gnu-emacs@gnu.org; Sat, 18 Nov 2017 23:26:02 -0500 Resent-From: Stefan Monnier Original-Sender: "Debbugs-submit" Resent-To: bug-gnu-emacs@gnu.org Resent-Date: Sun, 19 Nov 2017 04:26:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: cc-closed 29104 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Mail-Followup-To: 29104@debbugs.gnu.org, monnier@iro.umontreal.ca, olaf.rogalsky@t-online.de Original-Received: via spool by 29104-done@debbugs.gnu.org id=D29104.151106550323580 (code D ref 29104); Sun, 19 Nov 2017 04:26:02 +0000 Original-Received: (at 29104-done) by debbugs.gnu.org; 19 Nov 2017 04:25:03 +0000 Original-Received: from localhost ([127.0.0.1]:46706 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eGHAF-00068G-10 for submit@debbugs.gnu.org; Sat, 18 Nov 2017 23:25:03 -0500 Original-Received: from pmta21.teksavvy.com ([76.10.157.36]:45758) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eGHAD-00067i-0k for 29104-done@debbugs.gnu.org; Sat, 18 Nov 2017 23:25:01 -0500 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A2EDBQCZBhFa/3HQSC1bHAEBAQQBAQoBAYM8gVSdbYF9FJhfCoU7AoRnQxQBAQEBAQEBAQEDaCiFIAEEAXkFCwsNJwcLFBgxijAIq2MhAopPAQEBAQEFAgElgzSCB4ZpixMFkwiPNqB/KIcxljKBOjYjgXQ0IQgySYJlglscGYFsI4w0AQEB X-IPAS-Result: A2EDBQCZBhFa/3HQSC1bHAEBAQQBAQoBAYM8gVSdbYF9FJhfCoU7AoRnQxQBAQEBAQEBAQEDaCiFIAEEAXkFCwsNJwcLFBgxijAIq2MhAopPAQEBAQEFAgElgzSCB4ZpixMFkwiPNqB/KIcxljKBOjYjgXQ0IQgySYJlglscGYFsI4w0AQEB X-IronPort-AV: E=Sophos;i="5.44,419,1505793600"; d="scan'208";a="9358894" Original-Received: from unknown (HELO fmsmemgm.homelinux.net) ([45.72.208.113]) by smtp.teksavvy.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 18 Nov 2017 23:24:50 -0500 Original-Received: by fmsmemgm.homelinux.net (Postfix, from userid 20848) id 75E64AE0E4; Sat, 18 Nov 2017 23:24:49 -0500 (EST) In-Reply-To: <1510581474048.7762584.ec34b569bff8873067a3b84e08b73b2215d5dd1a@spica.telekom.de> (olaf's message of "Mon, 13 Nov 2017 14:57:54 +0100 (CET)") X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 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: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:140079 Archived-At: > In a more radical approach and instead of my original patch, one can > get rid off with the variable first_event all together, see patch > below. It simplifies the code a little bit, but of course is > more risky. Indeed, I got a similar patch (see below) by simply moving your assignment to first_event from "before the `goto replay_sequence`" to after it (i.e. after the replay_sequence label). Your patch looks about as good as mine. I think they're both better than your first patch because they fix the problem in a single place (The Right Place). I installed mine because it's shorter and looks more "obviously safe" to me. Thanks a lot for tracking it down! Stefan diff --git a/src/keyboard.c b/src/keyboard.c index 399149ae97..6b7a6bfa74 100644 --- a/src/keyboard.c +++ b/src/keyboard.c @@ -8919,7 +8919,6 @@ read_key_sequence (Lisp_Object *keybuf, int bufsize, Lisp_Object prompt, ptrdiff_t keys_start; Lisp_Object current_binding = Qnil; - Lisp_Object first_event = Qnil; /* Index of the first key that has no binding. It is useless to try fkey.start larger than that. */ @@ -9029,6 +9028,7 @@ read_key_sequence (Lisp_Object *keybuf, int bufsize, Lisp_Object prompt, starting_buffer = current_buffer; first_unbound = bufsize + 1; + Lisp_Object first_event = mock_input > 0 ? keybuf[0] : Qnil; /* Build our list of keymaps. If we recognize a function key and replace its escape sequence in