$OpenBSD: patch-xcept_script_c,v 1.1 2000/09/03 16:25:05 espie Exp $
--- xcept/script.c.orig	Fri Sep 24 16:07:29 1993
+++ xcept/script.c	Sun Sep  3 17:29:40 2000
@@ -809,7 +809,6 @@ static s_strcat()
    if(a->value == b->value)
       return error("pc: %d - variables don't differ!\n",pc);
    len = strlen(a->value) + strlen(b->value) + 1;
-   free(a->value);
    if(!(a->value = ralloc(a->value,len))) return errorp("realloc\n");
    strcat(a->value,b->value);
    
@@ -1082,7 +1081,8 @@ static s_input()
 	    printf( "%s", b->value );
 	    fflush(stdout);
 	 }
-	 gets(tmpstr); 
+	 fgets(tmpstr, 300, stdin); 
+	 if ((ptr = strchr(tmpstr, '\n'))) *ptr = '\0';
    }
    else if(visible) {
       if(echo) {
@@ -1105,7 +1105,8 @@ static s_input()
 	 }
 	 printf("?  ");
 	 fflush(stdout);
-	 gets(tmpstr); 
+	 fgets(tmpstr, 300, stdin); 
+	 if ((ptr = strchr(tmpstr, '\n'))) *ptr = '\0';
 	 if( !strlen(tmpstr) ) strncpy( tmpstr, c->value, sizeof(tmpstr)-1 );
       }
    }
