summaryrefslogtreecommitdiff
path: root/drivers/media/video/cx231xx/cx231xx-video.c
diff options
context:
space:
mode:
authorDan Carpenter <error27@gmail.com>2010-04-02 15:30:10 +0400
committerMauro Carvalho Chehab <mchehab@redhat.com>2010-05-19 19:57:30 +0400
commit8e47567f7d24346980f109d7eaed083106ff170d (patch)
tree8317809620c4386e0acd828cff8aa43ce365d96f /drivers/media/video/cx231xx/cx231xx-video.c
parentf76280154cdbb0ad02d5402972d1eb85f9e2898a (diff)
downloadlinux-8e47567f7d24346980f109d7eaed083106ff170d.tar.xz
V4L/DVB: cx231xx: improve error handling
Return -EINVAL if we don't find the control id. Signed-off-by: Dan Carpenter <error27@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/cx231xx/cx231xx-video.c')
-rw-r--r--drivers/media/video/cx231xx/cx231xx-video.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/media/video/cx231xx/cx231xx-video.c b/drivers/media/video/cx231xx/cx231xx-video.c
index 16a73eab6726..597c416218cf 100644
--- a/drivers/media/video/cx231xx/cx231xx-video.c
+++ b/drivers/media/video/cx231xx/cx231xx-video.c
@@ -1902,9 +1902,12 @@ static int radio_queryctrl(struct file *file, void *priv,
if (c->id < V4L2_CID_BASE || c->id >= V4L2_CID_LASTP1)
return -EINVAL;
if (c->id == V4L2_CID_AUDIO_MUTE) {
- for (i = 0; i < CX231XX_CTLS; i++)
+ for (i = 0; i < CX231XX_CTLS; i++) {
if (cx231xx_ctls[i].v.id == c->id)
break;
+ }
+ if (i == CX231XX_CTLS)
+ return -EINVAL;
*c = cx231xx_ctls[i].v;
} else
*c = no_ctl;