Commit 025a26fa authored by Daniel Mentz's avatar Daniel Mentz Committed by Mauro Carvalho Chehab

media: v4l2-compat-ioctl32: Copy v4l2_window->global_alpha

Commit b2787845 ("V4L/DVB (5289): Add support for video output
overlays.") added the field global_alpha to struct v4l2_window but did
not update the compat layer accordingly. This change adds global_alpha
to struct v4l2_window32 and copies the value for global_alpha back and
forth.
Signed-off-by: default avatarDaniel Mentz <danielmentz@google.com>
Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
parent 7cc7a833
...@@ -43,6 +43,7 @@ struct v4l2_window32 { ...@@ -43,6 +43,7 @@ struct v4l2_window32 {
compat_caddr_t clips; /* actually struct v4l2_clip32 * */ compat_caddr_t clips; /* actually struct v4l2_clip32 * */
__u32 clipcount; __u32 clipcount;
compat_caddr_t bitmap; compat_caddr_t bitmap;
__u8 global_alpha;
}; };
static int get_v4l2_window32(struct v4l2_window *kp, struct v4l2_window32 __user *up) static int get_v4l2_window32(struct v4l2_window *kp, struct v4l2_window32 __user *up)
...@@ -51,7 +52,8 @@ static int get_v4l2_window32(struct v4l2_window *kp, struct v4l2_window32 __user ...@@ -51,7 +52,8 @@ static int get_v4l2_window32(struct v4l2_window *kp, struct v4l2_window32 __user
copy_from_user(&kp->w, &up->w, sizeof(up->w)) || copy_from_user(&kp->w, &up->w, sizeof(up->w)) ||
get_user(kp->field, &up->field) || get_user(kp->field, &up->field) ||
get_user(kp->chromakey, &up->chromakey) || get_user(kp->chromakey, &up->chromakey) ||
get_user(kp->clipcount, &up->clipcount)) get_user(kp->clipcount, &up->clipcount) ||
get_user(kp->global_alpha, &up->global_alpha))
return -EFAULT; return -EFAULT;
if (kp->clipcount > 2048) if (kp->clipcount > 2048)
return -EINVAL; return -EINVAL;
...@@ -84,7 +86,8 @@ static int put_v4l2_window32(struct v4l2_window *kp, struct v4l2_window32 __user ...@@ -84,7 +86,8 @@ static int put_v4l2_window32(struct v4l2_window *kp, struct v4l2_window32 __user
if (copy_to_user(&up->w, &kp->w, sizeof(kp->w)) || if (copy_to_user(&up->w, &kp->w, sizeof(kp->w)) ||
put_user(kp->field, &up->field) || put_user(kp->field, &up->field) ||
put_user(kp->chromakey, &up->chromakey) || put_user(kp->chromakey, &up->chromakey) ||
put_user(kp->clipcount, &up->clipcount)) put_user(kp->clipcount, &up->clipcount) ||
put_user(kp->global_alpha, &up->global_alpha))
return -EFAULT; return -EFAULT;
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment