Bug in Uemacs 3.9e (w/cursor key mods)
Lawrence F. Strickland
larry at jc3b21.UUCP
Thu Apr 7 23:00:04 AEST 1988
In the modifications to MicroEmacs 3.9e to allow cursor/function key handling
under UNIX, there was a bug that affected ONLY building MicroEmacs on a BSD
type system. The (simple) patch is given below:
DESCRIPTION: When using BSD4.[23], the ESC key did not always work unless
you waited at least one second after hitting the key.
REPEAT-BY: Execute emacs, then hit ESC followed by x rather fast. Instead
of getting a : at the bottom of the screen, nothing happens. Hitting the
space bar results in the message: [Mark Set]
FIX: At or about line 448 in the tcap.c file, you will find the two lines:
if(pbptr > pbbuf)
c = *--pbptr;
Change to the following four lines (NOTE: just add two lines):
if(pbptr > pbbuf)
{
c = *--pbptr;
return(127 & c);
}
Note that this is a QUICK FIX. There are some additional changes that would
prove better, but this does repair the problem. A more complete change that
improves running speed follows. Here is an official context diff which can
be used with Larry Walls patch program:
-------cut here-------------------cut here-------------------cut here-------
*** tcap.c.orig Thu Apr 7 07:43:50 1988
--- tcap.c Thu Apr 7 07:45:51 1988
***************
*** 446,451
int c;
if(pbptr > pbbuf)
c = *--pbptr;
#if USG
else if(kbdqp) /* char waiting in buffer */
--- 446,452 -----
int c;
if(pbptr > pbbuf)
+ {
c = *--pbptr;
return(127 & c);
}
***************
*** 447,452
if(pbptr > pbbuf)
c = *--pbptr;
#if USG
else if(kbdqp) /* char waiting in buffer */
{
--- 448,455 -----
if(pbptr > pbbuf)
{
c = *--pbptr;
+ return(127 & c);
+ }
#if USG
else if(kbdqp) /* char waiting in buffer */
{
-------cut here-------------------cut here-------------------cut here-------
--
+--------------------------------------+-- St. Petersburg Junior College --+
| Lawrence F. Strickland | P.O. Box 13489 |
| ...gatech!codas!usfvax2!jc3b21!larry | St. Petersburg, FL 33733 |
+-(or) ...gatech!usfvax2!jc3b21!larry -+-- Phone: +1 813 341 4705 ---------+
More information about the Comp.sources.bugs
mailing list