summaryrefslogtreecommitdiffstats
path: root/DynamicMeter.c
diff options
context:
space:
mode:
authorNathan Scott <nathans@redhat.com>2021-07-12 16:03:29 +1000
committerNathan Scott <nathans@redhat.com>2021-07-14 11:58:31 +1000
commita4764902829d2a25a0e27c31824274362e11adea (patch)
tree81db785a4c9298f2e459649a18e6b2d04e03ac6c /DynamicMeter.c
parentbf22a8fb13c9495466051caa5a0c0e9c1f9de0df (diff)
Ensure we do not attempt to add a DynamicMeter via the
htoprc that we didn't find during start up. This just leaves blank sections of the display as @smalinux found. Related to https://github.com/htop-dev/htop/pull/682
Diffstat (limited to 'DynamicMeter.c')
-rw-r--r--DynamicMeter.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/DynamicMeter.c b/DynamicMeter.c
index 3b567a53..605bbc3d 100644
--- a/DynamicMeter.c
+++ b/DynamicMeter.c
@@ -36,20 +36,24 @@ Hashtable* DynamicMeters_new(void) {
typedef struct {
unsigned int key;
const char* name;
+ bool found;
} DynamicIterator;
static void DynamicMeter_compare(ht_key_t key, void* value, void* data) {
const DynamicMeter* meter = (const DynamicMeter*)value;
DynamicIterator* iter = (DynamicIterator*)data;
- if (String_eq(iter->name, meter->name))
+ if (String_eq(iter->name, meter->name)) {
+ iter->found = true;
iter->key = key;
+ }
}
-unsigned int DynamicMeter_search(const ProcessList* pl, const char* name) {
- DynamicIterator iter = { .key = 0, .name = name };
+bool DynamicMeter_search(const ProcessList* pl, const char* name, unsigned int* key) {
+ DynamicIterator iter = { .key = 0, .name = name, .found = false };
if (pl->dynamicMeters)
Hashtable_foreach(pl->dynamicMeters, DynamicMeter_compare, &iter);
- return iter.key;
+ *key = iter.key;
+ return iter.found;
}
const char* DynamicMeter_lookup(const ProcessList* pl, unsigned int key) {

© 2014-2024 Faster IT GmbH | imprint | privacy policy