From: | "Simon 'corecode' Schubert" <corecode@xxxxxxxxxxxx> |
Date: | Wed, 9 Jun 2004 00:38:36 +0200 |
The installer popen()'s "cpdup -vvv src dest" and it reads from this pipe to monitor cpdup's progress. Unfortunately, since cpdup's output is fully buffered, cpdup's progress can't be usefully measured this way.Now, we could add a flag for every single program to write unbuffered (linebuffered) output. Or we could do some (non-POSIX?) magic in libc to get most of this just fixed by doing a env LIBC_STDOUT_BUFFERING=line $program or whatever...The man pages make it sound a bit like this is already possible, but I can't figure out how to do it. So by the sounds of it, the attached program should be able to run another program, forcing that other program's stdout to be unbufferred. But in (a small amount of) testing, I couldn't seem to get that behaviour.
cheers simon
-- /"\ \ / \ ASCII Ribbon Campaign / \ Against HTML Mail and News
Attachment:
PGP.sig
Description: This is a digitally signed message part