emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: After compose key cursor or function keys don't work


From: Jan D.
Subject: Re: After compose key cursor or function keys don't work
Date: Mon, 13 Jun 2005 17:47:44 +0200
User-agent: Mozilla Thunderbird 1.0 (X11/20041206)


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.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]