From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Jan D." Newsgroups: gmane.emacs.devel Subject: Re: After compose key cursor or function keys don't work Date: Mon, 13 Jun 2005 17:47:44 +0200 Message-ID: <42ADAAA0.6020605@swipnet.se> References: <42A4330C.703@swipnet.se> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Trace: sea.gmane.org 1118678058 10403 80.91.229.2 (13 Jun 2005 15:54:18 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Mon, 13 Jun 2005 15:54:18 +0000 (UTC) Cc: rms@gnu.org, emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Jun 13 17:54:15 2005 Return-path: Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1DhrFw-0003xj-9b for ged-emacs-devel@m.gmane.org; Mon, 13 Jun 2005 17:53:44 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1DhrKk-0005qW-OL for ged-emacs-devel@m.gmane.org; Mon, 13 Jun 2005 11:58:42 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1DhrKH-0005ig-BO for emacs-devel@gnu.org; Mon, 13 Jun 2005 11:58:13 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1DhrKB-0005fy-DE for emacs-devel@gnu.org; Mon, 13 Jun 2005 11:58:10 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1DhrK9-0005bF-EB for emacs-devel@gnu.org; Mon, 13 Jun 2005 11:58:05 -0400 Original-Received: from [195.54.107.70] (helo=mxfep01.bredband.com) by monty-python.gnu.org with esmtp (Exim 4.34) id 1DhrCB-0007nv-Ni; Mon, 13 Jun 2005 11:49:52 -0400 Original-Received: from coolsville.localdomain ([83.226.180.210] [83.226.180.210]) by mxfep01.bredband.com with ESMTP id <20050613154843.GKKW19329.mxfep01.bredband.com@coolsville.localdomain>; Mon, 13 Jun 2005 17:48:43 +0200 User-Agent: Mozilla Thunderbird 1.0 (X11/20041206) X-Accept-Language: en-us, en Original-To: Klaus Zeitler In-Reply-To: X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:38731 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:38731 > Jan> > Jan> I suspect that for some reason compose_status is not right, around > Jan> line 6276 there is a break that in effect ignores key presses. > >Good guess. It seems as if the data in compose_status wont be changed when >I press e.g. an arrow key. Therefore if I try to press an arrow key right >after finishing a compose sequence compose_status.chars_matched is still set >to 3. Thus the if statement, you pointed me to, will be executed: > > if (compose_status.chars_matched > 0 && nbytes == 0) > break; > >It works, if I reset compose_status, once a compose sequence is complete, >i.e. if I change the line above to (not very nice, I know, since it uses the >internals of compose_status): > Does this patch work? Index: xterm.c *** xterm.c.~1.867.~ 2005-06-13 17:46:19.000000000 +0200 --- xterm.c 2005-06-13 17:43:14.000000000 +0200 *************** *** 6281,6286 **** --- 6281,6287 ---- if (compose_status.chars_matched > 0 && nbytes == 0) break; + bzero (&compose_status, sizeof (compose_status)); orig_keysym = keysym; /* Common for all keysym input events. */ Jan D.