From 1c3d876e795d964bae34929f9b9d2c3914a597d8 Mon Sep 17 00:00:00 2001 From: Marcel Hollerbach Date: Wed, 23 Jan 2019 14:39:44 +0100 Subject: [PATCH] eolian: add support for the container array this fixes a lot of different warnings in the efl_mono test generation. Reviewed-by: Daniel Kolesa Differential Revision: https://phab.enlightenment.org/D7730 --- src/bin/eolian/sources.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/bin/eolian/sources.c b/src/bin/eolian/sources.c index d80ca74..a0caefc 100644 --- a/src/bin/eolian/sources.c +++ b/src/bin/eolian/sources.c @@ -258,6 +258,18 @@ _generate_iterative_free(Eina_Strbuf **buf, const Eolian_Type *type, const Eolia eina_strbuf_append_buffer(*buf, param); eina_strbuf_append(*buf, ");\n"); } + else if (t == EOLIAN_TYPE_BUILTIN_ARRAY) + { + eina_strbuf_append_printf(*buf, " while(("); + eina_strbuf_append_buffer(*buf, iter_param); + eina_strbuf_append_printf(*buf, " = eina_array_pop("); + eina_strbuf_append_buffer(*buf, param); + eina_strbuf_append_printf(*buf, ")))\n"); + _generate_loop_content(buf, inner_type, iter_param); + eina_strbuf_append_printf(*buf, " eina_array_free("); + eina_strbuf_append_buffer(*buf, param); + eina_strbuf_append_printf(*buf, ");\n"); + } else { printf("Error, container unknown?! %d\n", (int)t); -- 2.7.4