Re: [PATCH 03/35] media: uvcvideo: Refactor iterators

From: Sergey Senozhatsky
Date: Tue Apr 16 2024 - 00:39:53 EST


On (24/04/15 19:34), Ricardo Ribalda wrote:
[..]
> @@ -2165,7 +2167,7 @@ static int uvc_ctrl_init_xu_ctrl(struct uvc_device *dev,
> int uvc_xu_ctrl_query(struct uvc_video_chain *chain,
> struct uvc_xu_control_query *xqry)
> {
> - struct uvc_entity *entity;
> + struct uvc_entity *entity, *iter;
> struct uvc_control *ctrl;
> unsigned int i;
> bool found;

Is `found` still used?

> @@ -2175,16 +2177,16 @@ int uvc_xu_ctrl_query(struct uvc_video_chain *chain,
> int ret;
>
> /* Find the extension unit. */
> - found = false;
> - list_for_each_entry(entity, &chain->entities, chain) {
> - if (UVC_ENTITY_TYPE(entity) == UVC_VC_EXTENSION_UNIT &&
> - entity->id == xqry->unit) {
> - found = true;
> + entity = NULL;
> + list_for_each_entry(iter, &chain->entities, chain) {
> + if (UVC_ENTITY_TYPE(iter) == UVC_VC_EXTENSION_UNIT &&
> + iter->id == xqry->unit) {
> + entity = iter;
> break;
> }
> }
>
> - if (!found) {
> + if (!entity) {
> uvc_dbg(chain->dev, CONTROL, "Extension unit %u not found\n",
> xqry->unit);
> return -ENOENT;