Introduce METER_BUFFER_CHECK and METER_BUFFER_APPEND_CHR to cleanup writing to bar buffers

Closes: #294
This commit is contained in:
Christian Göttsche
2020-11-24 19:34:27 +01:00
committed by Benny Baumann
parent 77ec86aff4
commit ad764ff972
6 changed files with 53 additions and 48 deletions

View File

@ -20,32 +20,17 @@ static void ZramMeter_updateValues(Meter* this, char* buffer, size_t size) {
this->curItems = 1;
written = Meter_humanUnit(buffer, this->values[0], size);
buffer += written;
size -= written;
if (size <= 0) {
return;
}
*buffer++ = '(';
size--;
if (size <= 0) {
return;
}
METER_BUFFER_CHECK(buffer, size, written);
METER_BUFFER_APPEND_CHR(buffer, size, '(');
written = Meter_humanUnit(buffer, this->values[1], size);
buffer += written;
size -= written;
if (size <= 0) {
return;
}
*buffer++ = ')';
size--;
if (size <= 0) {
return;
}
*buffer++ = '/';
size--;
if (size <= 0) {
return;
}
METER_BUFFER_CHECK(buffer, size, written);
METER_BUFFER_APPEND_CHR(buffer, size, ')');
METER_BUFFER_APPEND_CHR(buffer, size, '/');
Meter_humanUnit(buffer, this->total, size);
}