]> 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:48 +0000 (11:25 -0400)
commitcf665ad4c89eb9b20285dc04aec906d46ed810d2
tree74ce060b75bf77f6e8fdec9f940f800fe38ab2b4
parentc8e0997239840888a974624b0ab020177357f0ae
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