summaryrefslogtreecommitdiff
path: root/mount
diff options
context:
space:
mode:
authorKarel Zak <kzak@redhat.com>2007-08-07 00:36:31 +0200
committerKarel Zak <kzak@redhat.com>2007-08-07 00:36:31 +0200
commit1f58c445c6805c1a611a7eb1cde0ced633c40b6f (patch)
tree0daf55d335a6b5d24aa7841ac7a6951c943286ff /mount
parenta512390d9296ac5183cde1c2ca9e5fd9158ccf5e (diff)
downloadutil-linux-old-1f58c445c6805c1a611a7eb1cde0ced633c40b6f.tar.gz
script: fix race conditions
script(1) uses three processes (doinput, dooutput and doshell). It's possible that the shell process is finished before the input and output processes are completely initialized. For example: $ script -c "printf Bingo" In particular case the output and input processes read/write data from shell process in time when the shell process is already done -- so it hangs on read(). The second problem is that the output process can finish although there are unread data from finished shell process -- an output in the typescript file and on terminal is incomplete! script(1) has to pass: $ for i in `seq 1 1000`; do script -q -c "printf 'Bingo\n'"; done | grep -c Bingo 1000 without problems. Signed-off-by: Karel Zak <kzak@redhat.com>
Diffstat (limited to 'mount')
0 files changed, 0 insertions, 0 deletions