aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/bin/psql/common.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/bin/psql/common.c b/src/bin/psql/common.c
index 67df0cd2c77..396a40089ce 100644
--- a/src/bin/psql/common.c
+++ b/src/bin/psql/common.c
@@ -708,6 +708,7 @@ static bool
PrintQueryTuples(const PGresult *results)
{
printQueryOpt my_popt = pset.popt;
+ bool result = true;
/* one-shot expanded output requested via \gx */
if (pset.g_expanded)
@@ -725,6 +726,11 @@ PrintQueryTuples(const PGresult *results)
disable_sigpipe_trap();
printQuery(results, &my_popt, fout, false, pset.logfile);
+ if (ferror(fout))
+ {
+ pg_log_error("could not print result table: %m");
+ result = false;
+ }
if (is_pipe)
{
@@ -735,9 +741,16 @@ PrintQueryTuples(const PGresult *results)
fclose(fout);
}
else
+ {
printQuery(results, &my_popt, pset.queryFout, false, pset.logfile);
+ if (ferror(pset.queryFout))
+ {
+ pg_log_error("could not print result table: %m");
+ result = false;
+ }
+ }
- return true;
+ return result;
}