diff options
author | Dan Carpenter <error27@gmail.com> | 2010-04-02 15:30:10 +0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2010-05-19 19:57:30 +0400 |
commit | 8e47567f7d24346980f109d7eaed083106ff170d (patch) | |
tree | 8317809620c4386e0acd828cff8aa43ce365d96f /drivers/media/video/cx231xx/cx231xx-video.c | |
parent | f76280154cdbb0ad02d5402972d1eb85f9e2898a (diff) | |
download | linux-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.c | 5 |
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; |