pg_regress: Save errno in emit_tap_output_v() and switch to %m
authorMichael Paquier
Thu, 4 Apr 2024 02:33:07 +0000 (11:33 +0900)
committerMichael Paquier
Thu, 4 Apr 2024 02:33:07 +0000 (11:33 +0900)
commit85230a247c74b92d9676abdf6693ac9d56c373cf
treee6ebb9e3bf8959b6f8247c54c5b06988beadf649
parent71b66171d045878cb9267a268a3bf8ce4f11f333
pg_regress: Save errno in emit_tap_output_v() and switch to %m

emit_tap_output_v() includes some fprintf() calls for some output
related to the TAP protocol, that may clobber errno and break %m.  This
commit makes the logging of pg_regress smarter by saving errno before
restoring it in vfprintf() where the input strings are used, removing
the need for strerror().  All logs are switched to %m rather than
strerror(), shaving some code.

This was not a problem until now as pg_regress.c did not use %m, but the
change is simple enough that we have no reason to not support this
placeholder, and that will avoid future mistakes if new logs that
include %m are added.

Author: Dagfinn Ilmari Mannsåker
Reviewed-by: Peter Eisentraunt, Michael Paquier
Discussion: https://postgr.es/m/[email protected]
src/test/regress/pg_regress.c