diff options
author | Daniel Lange <DLange@git.local> | 2016-04-11 13:00:26 +0200 |
---|---|---|
committer | Daniel Lange <DLange@git.local> | 2016-04-11 13:00:26 +0200 |
commit | bea9b4798717b6f4e31085506dfc179eeb8dc17c (patch) | |
tree | e6b16257d9e7f8fb87b05dcdb8a0ba8bb3419eb7 /CPUMeter.c | |
parent | 1767b21eb219fb9ac332aca9f7c3abecd97b6b39 (diff) | |
download | debian_htop-bea9b4798717b6f4e31085506dfc179eeb8dc17c.tar.gz debian_htop-bea9b4798717b6f4e31085506dfc179eeb8dc17c.tar.bz2 debian_htop-bea9b4798717b6f4e31085506dfc179eeb8dc17c.zip |
Imported Upstream version 0.8.3upstream/0.8.3
Diffstat (limited to 'CPUMeter.c')
-rw-r--r-- | CPUMeter.c | 8 |
1 files changed, 8 insertions, 0 deletions
@@ -43,6 +43,10 @@ static void CPUMeter_init(Meter* this) { static void CPUMeter_setValues(Meter* this, char* buffer, int size) { ProcessList* pl = this->pl; int processor = this->param; + if (processor > this->pl->processorCount) { + snprintf(buffer, size, "absent"); + return; + } double total = (double) pl->totalPeriod[processor]; double cpu; this->values[0] = pl->nicePeriod[processor] / total * 100.0; @@ -67,6 +71,10 @@ static void CPUMeter_display(Object* cast, RichString* out) { char buffer[50]; Meter* this = (Meter*)cast; RichString_init(out); + if (this->param > this->pl->processorCount) { + RichString_append(out, CRT_colors[METER_TEXT], "absent"); + return; + } sprintf(buffer, "%5.1f%% ", this->values[1]); RichString_append(out, CRT_colors[METER_TEXT], ":"); RichString_append(out, CRT_colors[CPU_NORMAL], buffer); |