[PATCH vkd3d 08/17] include: Add list_move_after() and list_move_before().

Giovanni Mascellani gmascellani at codeweavers.com
Tue Jul 19 02:44:31 CDT 2022


Signed-off-by: Giovanni Mascellani <gmascellani at codeweavers.com>

Il 15/07/22 03:23, Francisco Casas ha scritto:
> From: Zebediah Figura <zfigura at codeweavers.com>
> 
> Signed-off-by: Francisco Casas <fcasas at codeweavers.com>
> ---
> v2:
> * Added in v2.
> ---
>   include/private/list.h | 20 ++++++++++++++++----
>   1 file changed, 16 insertions(+), 4 deletions(-)
> 
> diff --git a/include/private/list.h b/include/private/list.h
> index b4d681fe..5e92cfb2 100644
> --- a/include/private/list.h
> +++ b/include/private/list.h
> @@ -150,8 +150,8 @@ static inline unsigned int list_count( const struct list *list )
>       return count;
>   }
>   
> -/* move all elements from src to the tail of dst */
> -static inline void list_move_tail( struct list *dst, struct list *src )
> +/* move all elements from src to before the specified element */
> +static inline void list_move_before( struct list *dst, struct list *src )
>   {
>       if (list_empty(src)) return;
>   
> @@ -162,8 +162,8 @@ static inline void list_move_tail( struct list *dst, struct list *src )
>       list_init(src);
>   }
>   
> -/* move all elements from src to the head of dst */
> -static inline void list_move_head( struct list *dst, struct list *src )
> +/* move all elements from src to after the specified element */
> +static inline void list_move_after( struct list *dst, struct list *src )
>   {
>       if (list_empty(src)) return;
>   
> @@ -174,6 +174,18 @@ static inline void list_move_head( struct list *dst, struct list *src )
>       list_init(src);
>   }
>   
> +/* move all elements from src to the head of dst */
> +static inline void list_move_head( struct list *dst, struct list *src )
> +{
> +    list_move_after( dst, src );
> +}
> +
> +/* move all elements from src to the tail of dst */
> +static inline void list_move_tail( struct list *dst, struct list *src )
> +{
> +    list_move_before( dst, src );
> +}
> +
>   /* iterate through the list */
>   #define LIST_FOR_EACH(cursor,list) \
>       for ((cursor) = (list)->next; (cursor) != (list); (cursor) = (cursor)->next)



More information about the wine-devel mailing list