commit d7ea986299db33e3bce7a8be742c1ecf32e9a76e
parent 3b86e4b5efd0f6759b2634b607e74b938af30a60
Author: drkhsh <[email protected]>
Date:   Fri, 28 Oct 2022 00:11:15 +0200
ram: Refactor Linux perc/used
Fixes up overly complicated line, by splitting up logic
Diffstat:
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git 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>