|
@@ -1936,7 +1936,7 @@ static int snd_usb_pcm_close(struct snd_pcm_substream *substream, int direction)
|
|
|
struct snd_usb_stream *as = snd_pcm_substream_chip(substream);
|
|
struct snd_usb_stream *as = snd_pcm_substream_chip(substream);
|
|
|
struct snd_usb_substream *subs = &as->substream[direction];
|
|
struct snd_usb_substream *subs = &as->substream[direction];
|
|
|
|
|
|
|
|
- if (subs->interface >= 0) {
|
|
|
|
|
|
|
+ if (!as->chip->shutdown && subs->interface >= 0) {
|
|
|
usb_set_interface(subs->dev, subs->interface, 0);
|
|
usb_set_interface(subs->dev, subs->interface, 0);
|
|
|
subs->interface = -1;
|
|
subs->interface = -1;
|
|
|
}
|
|
}
|