diff options
author | Dan Carpenter <error27@gmail.com> | 2010-04-02 08:31:50 -0300 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2010-05-19 12:57:31 -0300 |
commit | a41b2ea73ad81bb42364841b37d4c3830a53dc0d (patch) | |
tree | 65cc30386bcc1dcf4faacdd7b0078f6574012312 /drivers/media/video/cx88/cx88-video.c | |
parent | 8e47567f7d24346980f109d7eaed083106ff170d (diff) | |
download | op-kernel-dev-a41b2ea73ad81bb42364841b37d4c3830a53dc0d.zip op-kernel-dev-a41b2ea73ad81bb42364841b37d4c3830a53dc0d.tar.gz |
V4L/DVB: cx88: improve error handling
Return -EINVAL if we don't find the right query 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/cx88/cx88-video.c')
-rw-r--r-- | drivers/media/video/cx88/cx88-video.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/media/video/cx88/cx88-video.c b/drivers/media/video/cx88/cx88-video.c index f5d1d89..0fab65c 100644 --- a/drivers/media/video/cx88/cx88-video.c +++ b/drivers/media/video/cx88/cx88-video.c @@ -1538,9 +1538,12 @@ static int radio_queryctrl (struct file *file, void *priv, c->id >= V4L2_CID_LASTP1) return -EINVAL; if (c->id == V4L2_CID_AUDIO_MUTE) { - for (i = 0; i < CX8800_CTLS; i++) + for (i = 0; i < CX8800_CTLS; i++) { if (cx8800_ctls[i].v.id == c->id) break; + } + if (i == CX8800_CTLS) + return -EINVAL; *c = cx8800_ctls[i].v; } else *c = no_ctl; |