Procházet zdrojové kódy

[media] v4l2-ctrls: return elem_size instead of strlen

When getting a string and the size given by the application is too
short return the max length the string can have (elem_size) instead
of the string length + 1. That makes more sense.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Reviewed-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Hans Verkuil před 11 roky
rodič
revize
c336f75e1e
1 změnil soubory, kde provedl 1 přidání a 1 odebrání
  1. 1 1
      drivers/media/v4l2-core/v4l2-ctrls.c

+ 1 - 1
drivers/media/v4l2-core/v4l2-ctrls.c

@@ -1332,7 +1332,7 @@ static int ptr_to_user(struct v4l2_ext_control *c,
 	case V4L2_CTRL_TYPE_STRING:
 		len = strlen(ptr.p_char);
 		if (c->size < len + 1) {
-			c->size = len + 1;
+			c->size = ctrl->elem_size;
 			return -ENOSPC;
 		}
 		return copy_to_user(c->string, ptr.p_char, len + 1) ?