diff options
author | Jelle Foks <jelle@foks.8m.com> | 2007-05-21 14:56:17 -0300 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@infradead.org> | 2007-07-03 15:11:16 -0300 |
commit | f057131fb6eb2c45f6023e3da41ccd6e4e71aee9 (patch) | |
tree | 7b01a33943d42bebc1a4fed50fa90005fe65dd26 /drivers/media | |
parent | 333408f21590d50397f3004e3f87070fa8f52c51 (diff) | |
download | blackbird-op-linux-f057131fb6eb2c45f6023e3da41ccd6e4e71aee9.tar.gz blackbird-op-linux-f057131fb6eb2c45f6023e3da41ccd6e4e71aee9.zip |
V4L/DVB (5816): Cx88-blackbird: fix vidioc_g_tuner never ending list of tuners
v4l-info and other programs would loop indefinitely while querying the
tuners for cx88-blackbird cards.
The cause was that vidioc_g_tuner didn't return an error value for
qctrl->id != 0, making the application think there is a never ending
list of tuners...
This patch adds the same index check as done in vidioc_g_tuner() in
cx88-video.
Signed-off-by: Jelle Foks <jelle@foks.8m.com>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'drivers/media')
-rw-r--r-- | drivers/media/video/cx88/cx88-blackbird.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/media/video/cx88/cx88-blackbird.c b/drivers/media/video/cx88/cx88-blackbird.c index b0466b88f52c..a80b1cb1abe8 100644 --- a/drivers/media/video/cx88/cx88-blackbird.c +++ b/drivers/media/video/cx88/cx88-blackbird.c @@ -1034,6 +1034,8 @@ static int vidioc_g_tuner (struct file *file, void *priv, if (unlikely(UNSET == core->tuner_type)) return -EINVAL; + if (0 != t->index) + return -EINVAL; strcpy(t->name, "Television"); t->type = V4L2_TUNER_ANALOG_TV; |