mirror of https://github.com/xzeldon/htop.git
Assert (Platform_meterTypes[0]==&CPUMeter_class)
Just assume Platform_meterTypes[0] is always &CPUMeter_class for every platform. This removes a conditional in AvailableMetersPanel_new(). Also adds some comments about the logic here. Without assuming Platform_meterTypes[0], the (int i=1) clause in this for loop will not make sense. (I.e. Why not (int i=0)? ) Also replaced a sprintf() call with safer snprintf() in code further below.
This commit is contained in:
parent
c8a735e471
commit
328de35623
|
@ -112,20 +112,22 @@ AvailableMetersPanel* AvailableMetersPanel_new(Settings* settings, Header* heade
|
||||||
this->scr = scr;
|
this->scr = scr;
|
||||||
|
|
||||||
Panel_setHeader(super, "Available meters");
|
Panel_setHeader(super, "Available meters");
|
||||||
|
// Platform_meterTypes[0] should be always (&CPUMeter_class), which we will
|
||||||
|
// handle separately in the code below.
|
||||||
for (int i = 1; Platform_meterTypes[i]; i++) {
|
for (int i = 1; Platform_meterTypes[i]; i++) {
|
||||||
MeterClass* type = Platform_meterTypes[i];
|
MeterClass* type = Platform_meterTypes[i];
|
||||||
if (type != &CPUMeter_class) {
|
assert(type != &CPUMeter_class);
|
||||||
const char* label = type->description ? type->description : type->uiName;
|
const char* label = type->description ? type->description : type->uiName;
|
||||||
Panel_add(super, (Object*) ListItem_new(label, i << 16));
|
Panel_add(super, (Object*) ListItem_new(label, i << 16));
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
// Handle (&CPUMeter_class)
|
||||||
MeterClass* type = &CPUMeter_class;
|
MeterClass* type = &CPUMeter_class;
|
||||||
int cpus = pl->cpuCount;
|
int cpus = pl->cpuCount;
|
||||||
if (cpus > 1) {
|
if (cpus > 1) {
|
||||||
Panel_add(super, (Object*) ListItem_new("CPU average", 0));
|
Panel_add(super, (Object*) ListItem_new("CPU average", 0));
|
||||||
for (int i = 1; i <= cpus; i++) {
|
for (int i = 1; i <= cpus; i++) {
|
||||||
char buffer[50];
|
char buffer[50];
|
||||||
sprintf(buffer, "%s %d", type->uiName, i);
|
snprintf(buffer, 50, "%s %d", type->uiName, i);
|
||||||
Panel_add(super, (Object*) ListItem_new(buffer, i));
|
Panel_add(super, (Object*) ListItem_new(buffer, i));
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in New Issue