--- Wnn/jserver/de.c~ Fri Aug 19 10:31:23 1994 +++ Wnn/jserver/de.c Fri Mar 10 00:44:42 2000 @@ -65,6 +65,9 @@ #include +#if (defined(__unix__) || defined(unix)) && !defined(USG) +#include +#endif #ifdef SYSVR2 #include #ifndef SIGCHLD @@ -264,7 +267,16 @@ fclose(stdin); fclose(stdout); if(!noisy){ +#if !(defined(BSD) && (BSD >= 199306)) /* !4.4BSD-Lite by Taoka */ fclose(stderr); +#else /* 4.4BSD-Lite */ + int fd = open("/dev/null", O_WRONLY); + if (fd < 0) { + xerror("Cannot open /dev/null\n"); + } + dup2(fd, 2); + close(fd); +#endif /* 4.4BSD-Lite */ } #if defined(hpux) || defined(SOLARIS) @@ -542,10 +554,14 @@ /** **/ void -gets_cur(cp) +gets_cur(cp, len) register char *cp; +int len; { - while((*cp++ = getc_cur()) != '\0'); + int i; + + for (i = 0; i < len; i++) + if ((*(cp + i) = getc_cur()) == '\0') break; } /** **/ @@ -648,6 +664,17 @@ { register int c; while(c= *p++) putc_cur(c); + putc_cur(0); +} + +/** **/ +void +puts_n_cur(p,n) +char *p; +int n; +{ + register int c; + while((c = *p++) && --n >= 0) putc_cur(c); putc_cur(0); }