diff options
author | cg <cg@FreeBSD.org> | 2000-01-26 20:27:45 +0000 |
---|---|---|
committer | cg <cg@FreeBSD.org> | 2000-01-26 20:27:45 +0000 |
commit | c54637f2845865f50d208cf5f73391606f9aec7a (patch) | |
tree | ca037a854e20a59acb378dc034a3b8465f5a3b2e | |
parent | f63e74b382a65c9df1eb84ec431f59b4fcb96cc9 (diff) | |
download | FreeBSD-src-c54637f2845865f50d208cf5f73391606f9aec7a.zip FreeBSD-src-c54637f2845865f50d208cf5f73391606f9aec7a.tar.gz |
handle simplex devices right
-rw-r--r-- | sys/dev/sound/pcm/dsp.c | 2 |
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 { |