diff options
author | drkhsh <me@drkhsh.at> | 2022-10-28 00:11:15 +0200 |
---|---|---|
committer | drkhsh <me@drkhsh.at> | 2022-10-28 01:03:20 +0200 |
commit | d7ea986299db33e3bce7a8be742c1ecf32e9a76e (patch) | |
tree | 60cc4a098a5a6294bf87afbb9b62f340ace2612b /components | |
parent | 3b86e4b5efd0f6759b2634b607e74b938af30a60 (diff) | |
download | slstatus-d7ea986299db33e3bce7a8be742c1ecf32e9a76e.tar.gz |
ram: Refactor Linux perc/used
Fixes up overly complicated line, by splitting up logic
Diffstat (limited to 'components')
-rw-r--r-- | components/ram.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/components/ram.c b/components/ram.c index d90b107..9a69db8 100644 --- a/components/ram.c +++ b/components/ram.c @@ -27,6 +27,7 @@ ram_perc(const char *unused) { uintmax_t total, free, buffers, cached; + int percent; if (pscanf("/proc/meminfo", "MemTotal: %ju kB\n" @@ -42,8 +43,8 @@ return NULL; } - return bprintf("%d", 100 * ((total - free) - (buffers + cached)) - / total); + percent = 100 * ((total - free) - (buffers + cached)) / total; + return bprintf("%d", percent); } const char * @@ -62,7 +63,7 @@ const char * ram_used(const char *unused) { - uintmax_t total, free, buffers, cached; + uintmax_t total, free, buffers, cached, used; if (pscanf("/proc/meminfo", "MemTotal: %ju kB\n" @@ -70,12 +71,11 @@ "MemAvailable: %ju kB\n" "Buffers: %ju kB\n" "Cached: %ju kB\n", - &total, &free, &buffers, &buffers, &cached) != 5) { + &total, &free, &buffers, &buffers, &cached) != 5) return NULL; - } - return fmt_human((total - free - buffers - cached) * 1024, - 1024); + used = (total - free - buffers - cached); + return fmt_human(used * 1024, 1024); } #elif defined(__OpenBSD__) #include <stdlib.h> |