Fix to reactive keyboard

ROSS at BIO-MEDICAL-PHYSICS.ABERDEEN.AC.UK ROSS at BIO-MEDICAL-PHYSICS.ABERDEEN.AC.UK
Fri Feb 23 08:30:45 AEST 1990


A recent message on the SUN-SPOTS list mentioned a predictive command line
editor called reactivekbd.  I got a copy from the comp.sources.unix
archive at uk.ac.ic.doc.src but when I tried to use it, it core dumped
with a segmentation error.  I have traced the error to the routine
Strcpy(a,b) in parse_keys.c where the if statement should have an else
keyword  added. The old and new versions of the function are included
below.

*****OLD
Strcpy(a,b)
char *a,*b;
$
        while(*b)$
                if((*b<32) || (*b==127))$
                        *a++='';
                        *a++=(*b==127)?b++,'?':(*b++)+'@';
                
                *a++ = *b++;
        
        *a=0;

*****NEW
Strcpy(a,b)
char *a,*b;
$
        while(*b)$
                if((*b<32) || (*b==127))$
                        *a++='';
                        *a++=(*b==127)?b++,'?':(*b++)+'@';
                else
                *a++ = *b++;
        
        *a=0;

*****

The program then runs and I personally think is a great utility when you
get used to it.  I hope this information helps if anyone else has the same
problem.

Philip Ross
Dept. Biomedical Physics,
Aberdeen University

ROSS at UK.AC.ABDN.BIOMED



More information about the Comp.sys.sun mailing list