Process: Fix PID & UID column widths off-by-one error

If the max PID or UID value for a platform is exactly a power of ten
(10000, 100000, etc.) the column widths of PID and UID would be 1 char
less than the correct number of digits. This is caused by the wrong
rounding function (ceil(x)); change to the correct one (trunc(x) + 1).

Signed-off-by: Kang-Che Sung <explorer09@gmail.com>
This commit is contained in:
Explorer09 2022-04-18 11:17:21 +08:00 committed by BenBE
parent afc4a9d657
commit ee1bf2f917
1 changed files with 2 additions and 2 deletions

View File

@ -54,7 +54,7 @@ void Process_setupColumnWidths() {
return; return;
} }
Process_pidDigits = ceil(log10(maxPid)); Process_pidDigits = (int)log10(maxPid) + 1;
assert(Process_pidDigits <= PROCESS_MAX_PID_DIGITS); assert(Process_pidDigits <= PROCESS_MAX_PID_DIGITS);
} }
@ -64,7 +64,7 @@ void Process_setUidColumnWidth(uid_t maxUid) {
return; return;
} }
Process_uidDigits = ceil(log10(maxUid)); Process_uidDigits = (int)log10(maxUid) + 1;
assert(Process_uidDigits <= PROCESS_MAX_UID_DIGITS); assert(Process_uidDigits <= PROCESS_MAX_UID_DIGITS);
} }