=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/bc/bc.y,v retrieving revision 1.36 retrieving revision 1.37 diff -c -r1.36 -r1.37 *** src/usr.bin/bc/bc.y 2011/06/03 06:10:31 1.36 --- src/usr.bin/bc/bc.y 2011/06/03 06:52:37 1.37 *************** *** 1,5 **** %{ ! /* $OpenBSD: bc.y,v 1.36 2011/06/03 06:10:31 otto Exp $ */ /* * Copyright (c) 2003, Otto Moerbeek --- 1,5 ---- %{ ! /* $OpenBSD: bc.y,v 1.37 2011/06/03 06:52:37 deraadt Exp $ */ /* * Copyright (c) 2003, Otto Moerbeek *************** *** 1058,1064 **** sigchld(int signo) { pid_t pid; ! int status; for (;;) { pid = waitpid(dc, &status, WCONTINUED); --- 1058,1064 ---- sigchld(int signo) { pid_t pid; ! int status, save_errno = errno; for (;;) { pid = waitpid(dc, &status, WCONTINUED); *************** *** 1072,1077 **** --- 1072,1078 ---- else break; } + errno = save_errno; } static const char *