diff options
author | Alexandre Ratchov <ratchov@cvs.openbsd.org> | 2008-08-20 14:22:51 +0000 |
---|---|---|
committer | Alexandre Ratchov <ratchov@cvs.openbsd.org> | 2008-08-20 14:22:51 +0000 |
commit | 49be92c44bbf570c03d5817bd474d473091d7f20 (patch) | |
tree | 53a22676bbd9bdf5aa9211c80b4e24dd30fd8493 /usr.bin | |
parent | 3d4da9e53ed9456748a92cddf65395472984da89 (diff) |
abuf_flush() must be called only from the ``xxx_in()'' routines (ie
triggered by POLLIN condition).
mix_pushzero() is not called from the ``xxx_in()'' chain, but calls
abuf_flush() resulting in bad initialization of the mixer, which
will lead to a deadlock at some point.
ok jakemsr
Diffstat (limited to 'usr.bin')
-rw-r--r-- | usr.bin/aucat/aproc.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/usr.bin/aucat/aproc.c b/usr.bin/aucat/aproc.c index 8fa5c7adfb4..fdace667490 100644 --- a/usr.bin/aucat/aproc.c +++ b/usr.bin/aucat/aproc.c @@ -1,4 +1,4 @@ -/* $OpenBSD: aproc.c,v 1.10 2008/08/14 09:58:55 ratchov Exp $ */ +/* $OpenBSD: aproc.c,v 1.11 2008/08/20 14:22:50 ratchov Exp $ */ /* * Copyright (c) 2008 Alexandre Ratchov <alex@caoua.org> * @@ -474,7 +474,7 @@ mix_pushzero(struct aproc *p) abuf_wcommit(obuf, obuf->mixtodo); obuf->mixtodo = 0; - abuf_flush(obuf); + abuf_run(obuf); mix_bzero(p); } |