=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/calendar/io.c,v retrieving revision 1.46 retrieving revision 1.47 diff -c -r1.46 -r1.47 *** src/usr.bin/calendar/io.c 2017/08/21 21:41:13 1.46 --- src/usr.bin/calendar/io.c 2017/09/25 19:13:56 1.47 *************** *** 1,4 **** ! /* $OpenBSD: io.c,v 1.46 2017/08/21 21:41:13 deraadt Exp $ */ /* * Copyright (c) 1989, 1993, 1994 --- 1,4 ---- ! /* $OpenBSD: io.c,v 1.47 2017/09/25 19:13:56 krw Exp $ */ /* * Copyright (c) 1989, 1993, 1994 *************** *** 385,391 **** struct stat sbuf; int nread, pdes[2], status; char buf[1024]; ! pid_t pid; if (!doall) return; --- 385,391 ---- struct stat sbuf; int nread, pdes[2], status; char buf[1024]; ! pid_t pid = -1; if (!doall) return; *************** *** 422,430 **** (void)write(pdes[1], buf, nread); (void)close(pdes[1]); done: (void)fclose(fp); ! while (waitpid(pid, &status, 0) == -1) { ! if (errno != EINTR) ! break; } } --- 422,432 ---- (void)write(pdes[1], buf, nread); (void)close(pdes[1]); done: (void)fclose(fp); ! if (pid != -1) { ! while (waitpid(pid, &status, 0) == -1) { ! if (errno != EINTR) ! break; ! } } }