From cd44bdeac66d0be8a67003eb6b6bfe699eee33d0 Mon Sep 17 00:00:00 2001 From: Derek Foreman Date: Tue, 13 Nov 2018 13:25:04 -0600 Subject: [PATCH] eet: Don't add duplicate lists to eet freelist The eet freelist code de-duplicates pointers, so passing duplicates is just fine, however it does waste time doing the de-dup. We know when we have a duplicate anyway, so save the time. Differential Revision: https://phab.enlightenment.org/D7278 Signed-off-by: Derek Foreman --- src/lib/eet/eet_data.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/lib/eet/eet_data.c b/src/lib/eet/eet_data.c index 05d1a8775f..4333559253 100644 --- a/src/lib/eet/eet_data.c +++ b/src/lib/eet/eet_data.c @@ -3843,9 +3843,12 @@ eet_data_get_list(Eet_Free_Context *context, if (edd) { + void *oldlist = list; + list = edd->func.list_append(list, data_ret); *ptr = list; - _eet_freelist_list_add(context, ptr); + if (oldlist != list) + _eet_freelist_list_add(context, ptr); } else eet_node_list_append(*((Eet_Node **)data), echnk->name, data_ret);