diff options
author | Alan Cox <alan@linux.intel.com> | 2012-09-04 15:43:26 +0200 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2012-09-23 18:50:30 +0200 |
commit | da35de640a0e9c805aba70439f524234890b96c5 (patch) | |
tree | cf034fd29fe2272dff4f6b92720dfc8bf7a5c012 | |
parent | [media] cx88: Fix reset delays (diff) | |
download | linux-da35de640a0e9c805aba70439f524234890b96c5.tar.xz linux-da35de640a0e9c805aba70439f524234890b96c5.zip |
[media] tlg2300: fix missing check for audio creation
If we fail to set up the capture device we go through negative indexes and
badness happens. Add the missing test.
Resolves-bug: https://bugzilla.kernel.org/show_bug.cgi?id=44551
Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r-- | drivers/media/usb/tlg2300/pd-alsa.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/media/usb/tlg2300/pd-alsa.c b/drivers/media/usb/tlg2300/pd-alsa.c index 9f8b7da56b67..0c778695e2c3 100644 --- a/drivers/media/usb/tlg2300/pd-alsa.c +++ b/drivers/media/usb/tlg2300/pd-alsa.c @@ -305,6 +305,10 @@ int poseidon_audio_init(struct poseidon *p) return ret; ret = snd_pcm_new(card, "poseidon audio", 0, 0, 1, &pcm); + if (ret < 0) { + snd_free_card(card); + return ret; + } snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_CAPTURE, &pcm_capture_ops); pcm->info_flags = 0; pcm->private_data = p; |