| From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
|---|---|
| To: | pgsql-committers(at)postgresql(dot)org |
| Subject: | pgsql: Avoid unportable usage of sscanf(UINT64_FORMAT). |
| Date: | 2014-05-27 02:23:59 |
| Message-ID: | E1Wp73X-0005Do-Vw@gemulon.postgresql.org |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-committers |
Avoid unportable usage of sscanf(UINT64_FORMAT).
On Mingw, it seems that scanf() doesn't necessarily accept the same format
codes that printf() does, and in particular it may fail to recognize %llu
even though printf() does. Since configure only probes printf() behavior
while setting up the INT64_FORMAT macros, this means it's unsafe to use
those macros with scanf(). We had only one instance of such a coding
pattern, in contrib/pg_stat_statements, so change that code to avoid
the problem.
Per buildfarm warnings. Back-patch to 9.0 where the troublesome code
was introduced.
Michael Paquier
Branch
------
master
Details
-------
http://git.postgresql.org/pg/commitdiff/9d7ded0f4277f5c0063eca8e871a34e2355a8371
Modified Files
--------------
contrib/pg_stat_statements/pg_stat_statements.c | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2014-05-27 02:24:00 | pgsql: Avoid unportable usage of sscanf(UINT64_FORMAT). |
| Previous Message | Andres Freund | 2014-05-26 05:31:12 | pgsql: Fix pg_recvlogical to accept the documented -I instead only --st |