diff options
author | mav <mav@FreeBSD.org> | 2012-01-16 00:26:52 +0000 |
---|---|---|
committer | mav <mav@FreeBSD.org> | 2012-01-16 00:26:52 +0000 |
commit | bba60d8920eabc0962fc804cd1ccd3e377a21cd1 (patch) | |
tree | 8ad66342fb754455e1ac6925efab474b41c6d4c3 | |
parent | 213db2103e6330ef8205522e5abb4dc9481c6c3d (diff) | |
download | FreeBSD-src-bba60d8920eabc0962fc804cd1ccd3e377a21cd1.zip FreeBSD-src-bba60d8920eabc0962fc804cd1ccd3e377a21cd1.tar.gz |
Add check to avoid assertion panic on duplicate stop.
Reported by: Yuri Pankov <yuri.pankov@gmail.com>
MFC after: 2 months
-rw-r--r-- | sys/dev/sound/pci/hda/hdaa.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/dev/sound/pci/hda/hdaa.c b/sys/dev/sound/pci/hda/hdaa.c index cee159e..4f73090 100644 --- a/sys/dev/sound/pci/hda/hdaa.c +++ b/sys/dev/sound/pci/hda/hdaa.c @@ -1351,6 +1351,8 @@ hdaa_channel_stop(struct hdaa_chan *ch) struct hdaa_widget *w; int i; + if ((ch->flags & HDAA_CHN_RUNNING) == 0) + return; ch->flags &= ~HDAA_CHN_RUNNING; HDAC_STREAM_STOP(device_get_parent(devinfo->dev), devinfo->dev, ch->dir == PCMDIR_PLAY ? 1 : 0, ch->sid); |