summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--SwapMeter.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/SwapMeter.c b/SwapMeter.c
index e428102a..63f58c5a 100644
--- a/SwapMeter.c
+++ b/SwapMeter.c
@@ -9,6 +9,7 @@ in the source distribution for its full text.
#include "SwapMeter.h"
+#include <math.h>
#include <stddef.h>
#include "CRT.h"
@@ -26,6 +27,8 @@ static void SwapMeter_updateValues(Meter* this) {
char* buffer = this->txtBuffer;
size_t size = sizeof(this->txtBuffer);
int written;
+
+ this->values[1] = NAN; /* 'cached' not present on all platforms */
Platform_setSwapValues(this);
written = Meter_humanUnit(buffer, this->values[0], size);
@@ -46,11 +49,11 @@ static void SwapMeter_display(const Object* cast, RichString* out) {
RichString_appendAscii(out, CRT_colors[METER_TEXT], " used:");
RichString_appendAscii(out, CRT_colors[METER_VALUE], buffer);
-#ifdef HTOP_LINUX
- Meter_humanUnit(buffer, this->values[1], sizeof(buffer));
- RichString_appendAscii(out, CRT_colors[METER_TEXT], " cache:");
- RichString_appendAscii(out, CRT_colors[SWAP_CACHE], buffer);
-#endif
+ if (!isnan(this->values[1])) {
+ Meter_humanUnit(buffer, this->values[1], sizeof(buffer));
+ RichString_appendAscii(out, CRT_colors[METER_TEXT], " cache:");
+ RichString_appendAscii(out, CRT_colors[SWAP_CACHE], buffer);
+ }
}
const MeterClass SwapMeter_class = {