From 6adf964c818dff459cfd8b812deaaa62823e6288 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Wed, 20 Feb 2019 22:34:34 +0100 Subject: [PATCH] lib/dbus/ReadIter: add dbus_message_iter_get_fixed_array() wrapper --- src/lib/dbus/ReadIter.hxx | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/lib/dbus/ReadIter.hxx b/src/lib/dbus/ReadIter.hxx index 9284f2baa..4d549a253 100644 --- a/src/lib/dbus/ReadIter.hxx +++ b/src/lib/dbus/ReadIter.hxx @@ -35,6 +35,7 @@ #include "Iter.hxx" #include "util/Compiler.h" +#include "util/ConstBuffer.hxx" #if GCC_OLDER_THAN(8,0) /* switch off completely bogus shadow warnings in older GCC @@ -81,6 +82,14 @@ public: return value; } + template + ConstBuffer GetFixedArray() noexcept { + void *value; + int n_elements; + dbus_message_iter_get_fixed_array(&iter, &value, &n_elements); + return {(const T *)value, size_t(n_elements)}; + } + /** * Create a new iterator which recurses into a container * value.