summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/util/u_dynarray.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/util/u_dynarray.h b/src/util/u_dynarray.h
index dcbbc06d161..6bea481d44b 100644
--- a/src/util/u_dynarray.h
+++ b/src/util/u_dynarray.h
@@ -102,6 +102,15 @@ util_dynarray_resize(struct util_dynarray *buf, unsigned newsize)
return p;
}
+static inline void
+util_dynarray_clone(struct util_dynarray *buf, void *mem_ctx,
+ struct util_dynarray *from_buf)
+{
+ util_dynarray_init(buf, mem_ctx);
+ util_dynarray_resize(buf, from_buf->size);
+ memcpy(buf->data, from_buf->data, from_buf->size);
+}
+
static inline void *
util_dynarray_grow(struct util_dynarray *buf, int diff)
{