|
@@ -1486,7 +1486,8 @@ static int v4l_queryctrl(const struct v4l2_ioctl_ops *ops,
|
|
|
{
|
|
|
struct video_device *vfd = video_devdata(file);
|
|
|
struct v4l2_queryctrl *p = arg;
|
|
|
- struct v4l2_fh *vfh = fh;
|
|
|
+ struct v4l2_fh *vfh =
|
|
|
+ test_bit(V4L2_FL_USES_V4L2_FH, &vfd->flags) ? fh : NULL;
|
|
|
|
|
|
if (vfh && vfh->ctrl_handler)
|
|
|
return v4l2_queryctrl(vfh->ctrl_handler, p);
|
|
@@ -1502,7 +1503,8 @@ static int v4l_querymenu(const struct v4l2_ioctl_ops *ops,
|
|
|
{
|
|
|
struct video_device *vfd = video_devdata(file);
|
|
|
struct v4l2_querymenu *p = arg;
|
|
|
- struct v4l2_fh *vfh = fh;
|
|
|
+ struct v4l2_fh *vfh =
|
|
|
+ test_bit(V4L2_FL_USES_V4L2_FH, &vfd->flags) ? fh : NULL;
|
|
|
|
|
|
if (vfh && vfh->ctrl_handler)
|
|
|
return v4l2_querymenu(vfh->ctrl_handler, p);
|
|
@@ -1518,7 +1520,8 @@ static int v4l_g_ctrl(const struct v4l2_ioctl_ops *ops,
|
|
|
{
|
|
|
struct video_device *vfd = video_devdata(file);
|
|
|
struct v4l2_control *p = arg;
|
|
|
- struct v4l2_fh *vfh = fh;
|
|
|
+ struct v4l2_fh *vfh =
|
|
|
+ test_bit(V4L2_FL_USES_V4L2_FH, &vfd->flags) ? fh : NULL;
|
|
|
struct v4l2_ext_controls ctrls;
|
|
|
struct v4l2_ext_control ctrl;
|
|
|
|
|
@@ -1551,7 +1554,8 @@ static int v4l_s_ctrl(const struct v4l2_ioctl_ops *ops,
|
|
|
{
|
|
|
struct video_device *vfd = video_devdata(file);
|
|
|
struct v4l2_control *p = arg;
|
|
|
- struct v4l2_fh *vfh = fh;
|
|
|
+ struct v4l2_fh *vfh =
|
|
|
+ test_bit(V4L2_FL_USES_V4L2_FH, &vfd->flags) ? fh : NULL;
|
|
|
struct v4l2_ext_controls ctrls;
|
|
|
struct v4l2_ext_control ctrl;
|
|
|
|
|
@@ -1579,7 +1583,8 @@ static int v4l_g_ext_ctrls(const struct v4l2_ioctl_ops *ops,
|
|
|
{
|
|
|
struct video_device *vfd = video_devdata(file);
|
|
|
struct v4l2_ext_controls *p = arg;
|
|
|
- struct v4l2_fh *vfh = fh;
|
|
|
+ struct v4l2_fh *vfh =
|
|
|
+ test_bit(V4L2_FL_USES_V4L2_FH, &vfd->flags) ? fh : NULL;
|
|
|
|
|
|
p->error_idx = p->count;
|
|
|
if (vfh && vfh->ctrl_handler)
|
|
@@ -1597,7 +1602,8 @@ static int v4l_s_ext_ctrls(const struct v4l2_ioctl_ops *ops,
|
|
|
{
|
|
|
struct video_device *vfd = video_devdata(file);
|
|
|
struct v4l2_ext_controls *p = arg;
|
|
|
- struct v4l2_fh *vfh = fh;
|
|
|
+ struct v4l2_fh *vfh =
|
|
|
+ test_bit(V4L2_FL_USES_V4L2_FH, &vfd->flags) ? fh : NULL;
|
|
|
|
|
|
p->error_idx = p->count;
|
|
|
if (vfh && vfh->ctrl_handler)
|
|
@@ -1615,7 +1621,8 @@ static int v4l_try_ext_ctrls(const struct v4l2_ioctl_ops *ops,
|
|
|
{
|
|
|
struct video_device *vfd = video_devdata(file);
|
|
|
struct v4l2_ext_controls *p = arg;
|
|
|
- struct v4l2_fh *vfh = fh;
|
|
|
+ struct v4l2_fh *vfh =
|
|
|
+ test_bit(V4L2_FL_USES_V4L2_FH, &vfd->flags) ? fh : NULL;
|
|
|
|
|
|
p->error_idx = p->count;
|
|
|
if (vfh && vfh->ctrl_handler)
|