On 6/19/06, Bram Moolenaar <[EMAIL PROTECTED]> wrote:
Yakov Lerner wrote: > After the following patch, the output is better. Two out of > three 'readonly' lines are now in place. > > --- message.c.000 2006-06-19 02:49:34.000000000 +0300 > +++ message.c 2006-06-19 02:52:41.000000000 +0300 > @@ -2767,6 +2767,7 @@ > ) > { > printf("%s", str); > + fflush(stdout); > return; > } > # endif > It doesn't happen for me, thus something in your setup must somehow change it. I see the "readonly" in the right place, both for Vim 6 and Vim 7.
Bram, Strange. Is stdout unbuffered on your OS ? On Linux/glibc, stdout is line-buffered (but stderr is unbuffered). I think this is per posix. The the following test #include <stdio.h> main() { printf("readonly "); fprintf(stderr,"before delay\n"); sleep(4); return 0; } prints the following on Linux: before delay readonly because stdout is line-buffered (flushed on exit in this case). Does it print "readonly before delay" on your OS ? That would mean that stdout is totally unbuffered on your OS unlike on Linux. Yakov