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 d86abbac06c2ceae3fcf87b86ee0df3f3f6df86d
Author: Alastair Poole <[email protected]>
AuthorDate: Sun Mar 29 19:33:24 2026 +0100

    graph_api: make sure we don't have duplicates with a clash
---
 src/bin/ui/evisum_ui_disk.c    | 1 +
 src/bin/ui/evisum_ui_memory.c  | 8 ++++++++
 src/bin/ui/evisum_ui_network.c | 6 ++++++
 src/bin/ui/evisum_ui_sensors.c | 1 +
 4 files changed, 16 insertions(+)

diff --git a/src/bin/ui/evisum_ui_disk.c b/src/bin/ui/evisum_ui_disk.c
index 79b9ff6..6560ab4 100644
--- a/src/bin/ui/evisum_ui_disk.c
+++ b/src/bin/ui/evisum_ui_disk.c
@@ -333,6 +333,7 @@ _evisum_ui_disk_disks_poll_feedback_cb(void *data, Ecore_Thread *thread EINA_UNU
 
         entry = _evisum_ui_disk_history_find_or_create(view, fs, NULL);
         if (!entry) continue;
+        if (entry->seen) continue;
 
         if (fs->usage.total) used_percent = ((double) fs->usage.used / (double) fs->usage.total) * 100.0;
         if (used_percent < 0.0) used_percent = 0.0;
diff --git a/src/bin/ui/evisum_ui_memory.c b/src/bin/ui/evisum_ui_memory.c
index 359e07e..272032c 100644
--- a/src/bin/ui/evisum_ui_memory.c
+++ b/src/bin/ui/evisum_ui_memory.c
@@ -23,6 +23,7 @@ typedef struct {
     uint64_t total;
     Eina_Bool enabled;
     Eina_Bool visible;
+    Eina_Bool sampled;
     Evisum_Ui_Memory_View *view;
 
     Evas_Object *legend_row;
@@ -280,6 +281,9 @@ _evisum_ui_memory_series_usage_set(Evisum_Ui_Memory_View *view, int idx, uint64_
     Memory_Series *entry = &view->series[idx];
     double used_percent = 0.0;
 
+    if (entry->sampled) return;
+    entry->sampled = EINA_TRUE;
+
     entry->enabled = enabled;
     entry->used = used;
     entry->total = total;
@@ -299,6 +303,10 @@ _evisum_ui_memory_series_usage_set(Evisum_Ui_Memory_View *view, int idx, uint64_
 
 static void
 _evisum_ui_memory_series_update_from_memory(Evisum_Ui_Memory_View *view, meminfo_t *memory) {
+    for (int i = 0; i < view->series_count; i++) {
+        view->series[i].sampled = EINA_FALSE;
+    }
+
     _evisum_ui_memory_series_usage_set(view, SERIES_USED, memory->used, memory->total, EINA_TRUE);
     _evisum_ui_memory_series_usage_set(view, SERIES_CACHED, memory->cached, memory->total, EINA_TRUE);
     _evisum_ui_memory_series_usage_set(view, SERIES_BUFFERED, memory->buffered, memory->total, EINA_TRUE);
diff --git a/src/bin/ui/evisum_ui_network.c b/src/bin/ui/evisum_ui_network.c
index a3e4537..9646623 100644
--- a/src/bin/ui/evisum_ui_network.c
+++ b/src/bin/ui/evisum_ui_network.c
@@ -60,6 +60,7 @@ typedef struct {
 
     Eina_Bool is_new;
     Eina_Bool delete_me;
+    Eina_Bool sampled;
 } Network_Interface;
 
 static void _evisum_ui_network_graph_redraw(Evisum_Ui_Network_View *view, Eina_List *interfaces);
@@ -383,6 +384,9 @@ _evisum_ui_network_update_feedback_cb(void *data, Ecore_Thread *thread EINA_UNUS
         view->graph_peak = 0.0;
     }
 
+    EINA_LIST_FOREACH(interfaces, l, iface)
+    iface->sampled = EINA_FALSE;
+
     EINA_LIST_FOREACH_SAFE(interfaces, l, l2, iface) {
         double rate = (double) iface->in + (double) iface->out;
 
@@ -399,6 +403,8 @@ _evisum_ui_network_update_feedback_cb(void *data, Ecore_Thread *thread EINA_UNUS
             _evisum_ui_network_iface_legend_add(view, iface);
         }
 
+        if (iface->sampled) continue;
+        iface->sampled = EINA_TRUE;
         _evisum_ui_network_iface_history_add(iface, rate);
         if (rate > view->graph_peak) view->graph_peak = rate;
         _evisum_ui_network_iface_legend_update(iface);
diff --git a/src/bin/ui/evisum_ui_sensors.c b/src/bin/ui/evisum_ui_sensors.c
index 3335286..5cec78e 100644
--- a/src/bin/ui/evisum_ui_sensors.c
+++ b/src/bin/ui/evisum_ui_sensors.c
@@ -369,6 +369,7 @@ _evisum_ui_sensors_poll_feedback_cb(void *data, Ecore_Thread *thread EINA_UNUSED
 
             entry = _evisum_ui_sensors_history_find_or_create(view, s);
             if (!entry) continue;
+            if (entry->seen) continue;
 
             entry->current_temp = temp;
             _evisum_ui_sensors_history_add_sample(entry, temp);

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

Reply via email to