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