From 42bda5fb67f6bfa1657e21d3fbaa2d3b43fab063 Mon Sep 17 00:00:00 2001 From: Lain Date: Tue, 2 Jan 2024 06:20:07 -0600 Subject: [PATCH] libobs/util: Add da_pop_front() Doesn't really make sense that it was missing, so just add it. --- libobs/util/darray.h | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/libobs/util/darray.h b/libobs/util/darray.h index e03b05232..6a729a74b 100644 --- a/libobs/util/darray.h +++ b/libobs/util/darray.h @@ -360,6 +360,15 @@ static inline void darray_erase_range(const size_t element_size, dst->num -= count; } +static inline void darray_pop_front(const size_t element_size, + struct darray *dst) +{ + assert(dst->num != 0); + + if (dst->num) + darray_erase(element_size, dst, 0); +} + static inline void darray_pop_back(const size_t element_size, struct darray *dst) { @@ -641,6 +650,7 @@ static inline void darray_swap(const size_t element_size, struct darray *dst, #define da_erase_range(dst, from, to) \ darray_erase_range(sizeof(*(dst).array), &(dst).da, from, to) +#define da_pop_front(dst) darray_pop_front(sizeof(*(dst).array), &(dst).da); #define da_pop_back(dst) darray_pop_back(sizeof(*(dst).array), &(dst).da); #define da_join(dst, src) \