summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorcg <cg@FreeBSD.org>2000-01-26 20:27:45 +0000
committercg <cg@FreeBSD.org>2000-01-26 20:27:45 +0000
commitc54637f2845865f50d208cf5f73391606f9aec7a (patch)
treeca037a854e20a59acb378dc034a3b8465f5a3b2e
parentf63e74b382a65c9df1eb84ec431f59b4fcb96cc9 (diff)
downloadFreeBSD-src-c54637f2845865f50d208cf5f73391606f9aec7a.zip
FreeBSD-src-c54637f2845865f50d208cf5f73391606f9aec7a.tar.gz
handle simplex devices right
-rw-r--r--sys/dev/sound/pcm/dsp.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/dev/sound/pcm/dsp.c b/sys/dev/sound/pcm/dsp.c
index c620f43..cc343d6 100644
--- a/sys/dev/sound/pcm/dsp.c
+++ b/sys/dev/sound/pcm/dsp.c
@@ -54,7 +54,7 @@ getchns(snddev_info *d, int chan, pcm_channel **rdch, pcm_channel **wrch)
KASSERT((d->flags & SD_F_PRIO_SET) != SD_F_PRIO_SET, \
("getchns: read and write both prioritised"));
- if (d->flags & SD_F_SIMPLEX) {
+ if ((d->flags & SD_F_SIMPLEX) && (d->flags & SD_F_PRIO_SET)) {
*rdch = (d->flags & SD_F_PRIO_RD)? d->arec[chan] : &d->fakechan;
*wrch = (d->flags & SD_F_PRIO_WR)? d->aplay[chan] : &d->fakechan;
} else {
OpenPOWER on IntegriCloud