Commit 2073c641 authored by Peter Eisentraut's avatar Peter Eisentraut

pg_test_timing: Some NLS fixes

The string "% of total" was marked by xgettext to be a c-format, but it
is actually not, so mark up the source to prevent that.

Compute the column widths of the final display dynamically based on the
translated strings, so that translations don't mess up the display
accidentally.
parent a772624b
......@@ -172,13 +172,22 @@ output(uint64 loop_count)
{
int64 max_bit = 31,
i;
char *header1 = _("< us");
char *header2 = /* xgettext:no-c-format */ _("% of total");
char *header3 = _("count");
int len1 = strlen(header1);
int len2 = strlen(header2);
int len3 = strlen(header3);
/* find highest bit value */
while (max_bit > 0 && histogram[max_bit] == 0)
max_bit--;
printf(_("Histogram of timing durations:\n"));
printf("%6s %10s %10s\n", _("< us"), _("% of total"), _("count"));
printf("%*s %*s %*s\n",
Max(6, len1), header1,
Max(10, len2), header2,
Max(10, len3), header3);
for (i = 0; i <= max_bit; i++)
{
......@@ -186,7 +195,9 @@ output(uint64 loop_count)
/* lame hack to work around INT64_FORMAT deficiencies */
snprintf(buf, sizeof(buf), INT64_FORMAT, histogram[i]);
printf("%6ld %9.5f %10s\n", 1l << i,
(double) histogram[i] * 100 / loop_count, buf);
printf("%*ld %*.5f %*s\n",
Max(6, len1), 1l << i,
Max(10, len2) - 1, (double) histogram[i] * 100 / loop_count,
Max(10, len3), buf);
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment