aml-build: fix build for glib < 2.22

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.maydell@linaro.org>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
This commit is contained in:
Michael S. Tsirkin 2015-03-03 17:40:45 +01:00
parent 48ce35b764
commit 2e5feadbf8

View File

@ -299,7 +299,7 @@ static Aml *aml_bundle(uint8_t op, AmlBlockFlags flags)
return var; return var;
} }
static void aml_free(gpointer data) static void aml_free(gpointer data, gpointer user_data)
{ {
Aml *var = data; Aml *var = data;
build_free_array(var->buf); build_free_array(var->buf);
@ -310,13 +310,14 @@ Aml *init_aml_allocator(void)
Aml *var; Aml *var;
assert(!alloc_list); assert(!alloc_list);
alloc_list = g_ptr_array_new_with_free_func(aml_free); alloc_list = g_ptr_array_new();
var = aml_alloc(); var = aml_alloc();
return var; return var;
} }
void free_aml_allocator(void) void free_aml_allocator(void)
{ {
g_ptr_array_foreach(alloc_list, aml_free, NULL);
g_ptr_array_free(alloc_list, true); g_ptr_array_free(alloc_list, true);
alloc_list = 0; alloc_list = 0;
} }