g_ptr_array_new_with_free_func is there since glib 2.22, use the older g_ptr_array_foreach instead.
Reported-by: Peter Maydell <peter.mayd...@linaro.org> Signed-off-by: Michael S. Tsirkin <m...@redhat.com> --- Seems to work ok here. Igor - can you pls confirm? hw/acpi/aml-build.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/hw/acpi/aml-build.c b/hw/acpi/aml-build.c index 3e5949b..876cada 100644 --- a/hw/acpi/aml-build.c +++ b/hw/acpi/aml-build.c @@ -299,7 +299,7 @@ static Aml *aml_bundle(uint8_t op, AmlBlockFlags flags) return var; } -static void aml_free(gpointer data) +static void aml_free(gpointer data, gpointer user_data) { Aml *var = data; build_free_array(var->buf); @@ -310,13 +310,14 @@ Aml *init_aml_allocator(void) Aml *var; assert(!alloc_list); - alloc_list = g_ptr_array_new_with_free_func(aml_free); + alloc_list = g_ptr_array_new(); var = aml_alloc(); return var; } void free_aml_allocator(void) { + g_ptr_array_foreach(alloc_list, aml_free, NULL); g_ptr_array_free(alloc_list, true); alloc_list = 0; } -- MST