version 1.17, 2003/06/03 02:56:11 |
version 1.18, 2005/07/11 14:08:23 |
|
|
|
|
fputs(pr, stdout); |
fputs(pr, stdout); |
fflush(stdout); |
fflush(stdout); |
if (src != NULL && strlen(src) > BUFSIZ - 2) { |
if (src != NULL && strlen(src) > sizeof(canonb) - 2) { |
puts("too long to edit"); |
puts("too long to edit"); |
return(src); |
return(src); |
} |
} |
|
|
cp = canonb; |
cp = canonb; |
*cp = 0; |
*cp = 0; |
#endif |
#endif |
cp2 = cp; |
|
while (cp2 < canonb + BUFSIZ) |
|
*cp2++ = 0; |
|
cp2 = cp; |
|
sigemptyset(&act.sa_mask); |
sigemptyset(&act.sa_mask); |
act.sa_flags = 0; /* Note: will not restart syscalls */ |
act.sa_flags = 0; /* Note: will not restart syscalls */ |
act.sa_handler = ttyint; |
act.sa_handler = ttyint; |
|
|
(void)sigaction(SIGTTIN, &act, NULL); |
(void)sigaction(SIGTTIN, &act, NULL); |
(void)sigprocmask(SIG_UNBLOCK, &intset, &oset); |
(void)sigprocmask(SIG_UNBLOCK, &intset, &oset); |
clearerr(stdin); |
clearerr(stdin); |
while (cp2 < canonb + BUFSIZ) { |
memset(cp, 0, canonb + sizeof(canonb) - cp); |
|
for (cp2 = cp; cp2 < canonb + sizeof(canonb) - 1; ) { |
c = getc(stdin); |
c = getc(stdin); |
switch (ttysignal) { |
switch (ttysignal) { |
case SIGINT: |
case SIGINT: |