This is an automated email from the git hooks/post-receive script.

git pushed a commit to branch master
in repository evisum.

View the commit online.

commit 751a9dfbe477ffb380dde53dffff73e50c8cdb60
Author: Alastair Poole <[email protected]>
AuthorDate: Wed May 6 21:20:37 2026 +0100

    REL: 2.0.5
---
 NEWS                                        |  7 +++++++
 VERSION                                     |  2 +-
 meson.build                                 |  2 +-
 src/bin/enigmatic/client/enigmatic_client.c |  2 ++
 src/bin/ui/evisum_ui_cache.c                |  1 +
 src/bin/ui/evisum_ui_widget_exel.c          | 16 ++++++++++++++--
 src/bin/ui/evisum_ui_widget_exel.h          |  4 ++--
 7 files changed, 28 insertions(+), 6 deletions(-)

diff --git a/NEWS b/NEWS
index e057720..0c8d323 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,10 @@
+============
+Evisum 2.0.5
+============
+
+  * Improve graph rendering at different scaling.
+  * Fix leak of objects when cache is pruned.
+
 ============
 Evisum 2.0.4
 ============
diff --git a/VERSION b/VERSION
index 2165f8f..e010258 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-2.0.4
+2.0.5
diff --git a/meson.build b/meson.build
index 7366450..72c831c 100644
--- a/meson.build
+++ b/meson.build
@@ -1,6 +1,6 @@
 ##### Project
 project('evisum', 'c',
-        version       : '2.0.4',
+        version       : '2.0.5',
         meson_version : '>= 0.56.0')
 
 efl_version = '>= 1.27.0'
diff --git a/src/bin/enigmatic/client/enigmatic_client.c b/src/bin/enigmatic/client/enigmatic_client.c
index 4b42dee..494440d 100644
--- a/src/bin/enigmatic/client/enigmatic_client.c
+++ b/src/bin/enigmatic/client/enigmatic_client.c
@@ -1398,6 +1398,8 @@ enigmatic_client_del(Enigmatic_Client *client)
 #endif
      }
    free_snapshot(&client->snapshot);
+   buffer_clear(&client->zbuf);
+   buffer_clear(&client->buf);
    if (client->fd != -1)
      close(client->fd);
    free(client->filename);
diff --git a/src/bin/ui/evisum_ui_cache.c b/src/bin/ui/evisum_ui_cache.c
index d932078..1c4b6a6 100644
--- a/src/bin/ui/evisum_ui_cache.c
+++ b/src/bin/ui/evisum_ui_cache.c
@@ -39,6 +39,7 @@ evisum_ui_item_cache_steal(Evisum_Ui_Cache *cache, Eina_List *objs) {
         }
         if (!found) {
             cache->active = eina_list_remove_list(cache->active, l);
+            evas_object_del(it->obj);
             free(it);
         }
     }
diff --git a/src/bin/ui/evisum_ui_widget_exel.c b/src/bin/ui/evisum_ui_widget_exel.c
index a98456a..afac5fa 100644
--- a/src/bin/ui/evisum_ui_widget_exel.c
+++ b/src/bin/ui/evisum_ui_widget_exel.c
@@ -1618,9 +1618,21 @@ evisum_ui_widget_exel_item_cache_reset(Evisum_Ui_Widget_Exel *wx, void (*done_cb
 }
 
 void
-evisum_ui_widget_exel_item_cache_steal(Evisum_Ui_Widget_Exel *wx, Eina_List *objs) {
+evisum_ui_widget_exel_item_cache_steal(Evisum_Ui_Widget_Exel *wx, Eina_List *items) {
+    Eina_List *contents = NULL;
+    Eina_List *l;
+    Elm_Object_Item *it;
+    Evas_Object *content;
+
     if (!wx || !wx->cache) return;
-    evisum_ui_item_cache_steal(wx->cache, objs);
+
+    EINA_LIST_FOREACH(items, l, it) {
+        content = elm_object_item_part_content_get(it, "elm.swallow.content");
+        if (content) contents = eina_list_append(contents, content);
+    }
+
+    evisum_ui_item_cache_steal(wx->cache, contents);
+    eina_list_free(contents);
 }
 
 unsigned int
diff --git a/src/bin/ui/evisum_ui_widget_exel.h b/src/bin/ui/evisum_ui_widget_exel.h
index 7aaa0d1..e2d03b2 100644
--- a/src/bin/ui/evisum_ui_widget_exel.h
+++ b/src/bin/ui/evisum_ui_widget_exel.h
@@ -271,9 +271,9 @@ Evas_Object *evisum_ui_widget_exel_item_cache_object_get(Evisum_Ui_Widget_Exel *
  * Use this after column/field layout changes so row object structure is recreated safely. */
 void evisum_ui_widget_exel_item_cache_reset(Evisum_Ui_Widget_Exel *wx, void (*done_cb)(void *data), void *data);
 
-/* Steal non-realized cache objects using the provided realized object list.
+/* Steal non-realized cache objects using the provided realized genlist item list.
  * Use this to cap cache growth under churn without leaking stale pooled objects. */
-void evisum_ui_widget_exel_item_cache_steal(Evisum_Ui_Widget_Exel *wx, Eina_List *objs);
+void evisum_ui_widget_exel_item_cache_steal(Evisum_Ui_Widget_Exel *wx, Eina_List *items);
 
 /* Return the number of active objects currently tracked by the widget-owned cache.
  * This is useful for deciding when to compact cache state after feedback updates. */

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.

Reply via email to