Re: [patch 48/67] Fix VIDIOC_ENUMSTD bug

Michael Krufky
2006-10-11T21:52:10Z

Jonathan Corbet wrote:
>> So any application which passes in index=0 gets EINVAL right off the bat
>> - and, in fact, this is what happens to mplayer. So I think the
>> following patch is called for, and maybe even appropriate for a 2.6.18.x
>> stable release.
>
> The fix is worth having, though I guess I'm no longer 100% sure it's
> necessary for -stable, since I don't think anything in-tree other than
> vivi uses this interface in 2.6.18. If you are going to include it,
> though, it makes sense to put in Sascha's fix too - both are needed to
> make the new v4l2 ioctl() interface operate as advertised.
>
> jon
>
>
> From: Sascha Hauer <s.hauer@pengutronix.de>
> Subject: [PATCH] copy-paste bug in videodev.c
> Date: Mon, 11 Sep 2006 10:50:55 +0200
> To: video4linux-list@redhat.com
>
> This patch fixes a copy-paste bug in videodev.c where the vidioc_qbuf()
> function gets called for the dqbuf ioctl.
>
> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
>
> diff --git a/drivers/media/video/videodev.c
> b/drivers/media/video/videodev.c
> index 88bf2af..8abee33 100644
> --- a/drivers/media/video/videodev.c
> +++ b/drivers/media/video/videodev.c
> @@ -739,13 +739,13 @@ static int __video_do_ioctl(struct inode
> case VIDIOC_DQBUF:
> {
> struct v4l2_buffer *p=arg;
> - if (!vfd->vidioc_qbuf)
> + if (!vfd->vidioc_dqbuf)
> break;
> ret = check_fmt (vfd, p->type);
> if (ret)
> break;
>
> - ret=vfd->vidioc_qbuf(file, fh, p);
> + ret=vfd->vidioc_dqbuf(file, fh, p);
> if (!ret)
> dbgbuf(cmd,vfd,p);
> break;
>
>

This is fine with me... I have added cc to Mauro, he might want to add
his sign-off as well.

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>