]> granicus.if.org Git - postgresql/commit
In pg_log_generic(), be more paranoid about preserving errno.
authorTom Lane <tgl@sss.pgh.pa.us>
Sat, 6 Jul 2019 15:25:37 +0000 (11:25 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Sat, 6 Jul 2019 15:25:37 +0000 (11:25 -0400)
commitfb30c9c1c5c36989d6b93906986358cb96936d64
treeb52a47704d2333120d09e68e4d03b7f5e1c4c7ab
parentb33283c36409aef7eddb5ba92bdd9300dd45d974
In pg_log_generic(), be more paranoid about preserving errno.

This code failed to account for the possibility that malloc() would
change errno, resulting in wrong output for %m, not to mention the
possibility of message truncation.  Such a change is obviously
expected when malloc fails, but there's reason to fear that on some
platforms even a successful malloc call can modify errno.

Discussion: https://postgr.es/m/2576.1527382833@sss.pgh.pa.us
src/common/logging.c