Re: [dwm] [dzen] strange behavior when using a C program

From: Anydot <dfenze_AT_gmail.com>
Date: Wed, 17 Oct 2007 10:22:02 +0200

On (17/10/07 11:11), lobzang_AT_free.fr wrote:
> Hi,

Hi,
try this:

>
> Here is a simple test to explain my problem.
>
> I wrote a shell script test.sh :
>
> while true
> do
> printf "test\n"
> sleep 1
> done
>
> Then I wrote a C program test.c that does exactly the same :
>
> test.c
> int main(void)
> {
> while(1)
> {
> printf ("test\n");

        fflush(stdout);

> sleep(1);
> }
> }
>
>
> ./test.sh | dzen2 -p --> works
> ./test | dzen2 -p --> doesn't work (nothing in the dzen bar)
>
>
> Any help appreciated..
>
> Lobzang.
>

If input/output is tty then it is line buffered, but if input/output is
not tty (pipe to another program in your case) then it is block
buffered.

-- 
Premysl "Anydot" Hruby >> http://na.srck.net <<
Received on Wed Oct 17 2007 - 10:22:11 UTC

This archive was generated by hypermail 2.2.0 : Sun Jul 13 2008 - 14:59:58 UTC