diff -ur newlib.orig/ChangeLog newlib/ChangeLog --- newlib.orig/ChangeLog Tue Feb 01 04:58:58 2000 +++ newlib/ChangeLog Fri Feb 18 13:31:18 2000 @@ -1,3 +1,9 @@ +Fri Feb 18 13:25:59 2000 Eric Fifer + + * libc/stdio/findfp.c (__sinit): stdout should be fully + buffered by default, code in makebuf.c (__smakebuf) already + asserts line buffering on tty devices. + Thu Jan 20 18:57:00 2000 Fernando Nasser * setvbuf.c (setvbuf): Set size to BUFSIZ when passed a zero size diff -ur newlib.orig/libc/stdio/findfp.c newlib/libc/stdio/findfp.c --- newlib.orig/libc/stdio/findfp.c Fri Aug 27 23:15:06 1999 +++ newlib/libc/stdio/findfp.c Fri Feb 18 10:23:52 2000 @@ -144,7 +144,7 @@ s->__sdidinit = 1; std (s->__sf + 0, __SRD, 0, s); - std (s->__sf + 1, __SWR | __SLBF, 1, s); + std (s->__sf + 1, __SWR, 1, s); std (s->__sf + 2, __SWR | __SNBF, 2, s); s->__sglue._next = NULL; diff -ur winsup.orig/cygwin/ChangeLog winsup/cygwin/ChangeLog --- winsup.orig/cygwin/ChangeLog Sat Feb 05 05:32:30 2000 +++ winsup/cygwin/ChangeLog Fri Feb 18 13:25:02 2000 @@ -1,3 +1,10 @@ +Fri Feb 18 13:13:52 2000 Eric Fifer + + * exceptions.cc (set_process_mask): flush pending signals + freed by sigmask change. + * select.cc (peek_pipe): ignore failure of PeekNamedPipe + when except_selected on write end of a pipe. + Sat Feb 5 00:26:01 2000 Christopher Faylor Throughout, rename global_signal_arrived to signal_arrived. diff -ur winsup.orig/cygwin/exceptions.cc winsup/cygwin/exceptions.cc --- winsup.orig/cygwin/exceptions.cc Sat Feb 05 05:32:31 2000 +++ winsup/cygwin/exceptions.cc Fri Feb 18 13:20:03 2000 @@ -798,6 +798,16 @@ sigproc_printf ("old mask = %x, new mask = %x", myself->getsigmask (), newmask); myself->setsigmask (newmask); // Set a new mask mask_sync->release (); + // flush any pending signals unblocked by mask change + for (int sig = 1; sig < NSIG; sig++) + { + if (*myself->getsigtodo(sig) && + !sigismember (& myself->getsigmask (), sig)) + { + sig_send(myself, __SIGFLUSH); + break; + } + } return; } --- winsup.orig/cygwin/select.cc Sat Feb 05 05:32:33 2000 +++ winsup/cygwin/select.cc Fri Feb 18 10:24:56 2000 @@ -429,7 +429,8 @@ n = -1; } - if (n < 0) + // if fh is /dev/pipew PeekNamedPipe fails with access denied + if (n < 0 && strcmp (fh->get_name(), "/dev/pipew") != 0) { select_printf ("%s, n %d", fh->get_name (), n); if (s->except_selected)