analyze: fix formatting of timestamps with 0 µs

There is a rule that "%.0d" formats 0 as "". There is no such rule for
"%0d" and 0 :(. The output had an extra 0 if usec was 0.
This commit is contained in:
Zbigniew Jędrzejewski-Szmek 2019-07-15 19:11:16 +02:00
parent 8b693c634d
commit 08f105df24
1 changed files with 7 additions and 5 deletions

View File

@ -1859,11 +1859,13 @@ static int test_timestamp_one(const char *p) {
if (r < 0)
return r;
r = table_add_cell_stringf(table, &cell, "@%"PRI_USEC"%s%0*"PRI_USEC"",
usec / USEC_PER_SEC,
usec % USEC_PER_SEC ? "." : "",
usec % USEC_PER_SEC ? 6 : 0,
usec % USEC_PER_SEC);
if (usec % USEC_PER_SEC == 0)
r = table_add_cell_stringf(table, &cell, "@%"PRI_USEC,
usec / USEC_PER_SEC);
else
r = table_add_cell_stringf(table, &cell, "@%"PRI_USEC".%06"PRI_USEC"",
usec / USEC_PER_SEC,
usec % USEC_PER_SEC);
if (r < 0)
return r;