mirror of
https://github.com/FEX-Emu/linux.git
synced 2024-12-26 19:36:41 +00:00
em28xx-alsa: Fix error patch for init/fini
If something bad happens during init, we free the card data. However, we still keep it initialized, causing some dependent code to be called at .fini. Fix it. Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
This commit is contained in:
parent
b49eb2bd71
commit
452f236fcf
@ -948,6 +948,7 @@ urb_free:
|
||||
|
||||
card_free:
|
||||
snd_card_free(card);
|
||||
adev->sndcard = NULL;
|
||||
|
||||
return err;
|
||||
}
|
||||
@ -966,12 +967,12 @@ static int em28xx_audio_fini(struct em28xx *dev)
|
||||
|
||||
em28xx_info("Closing audio extension");
|
||||
|
||||
if (dev->adev.sndcard) {
|
||||
snd_card_disconnect(dev->adev.sndcard);
|
||||
flush_work(&dev->wq_trigger);
|
||||
|
||||
em28xx_audio_free_urb(dev);
|
||||
|
||||
if (dev->adev.sndcard) {
|
||||
snd_card_free(dev->adev.sndcard);
|
||||
dev->adev.sndcard = NULL;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user