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 #include #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 = {