aboutsummaryrefslogtreecommitdiff
path: root/src/interfaces/libpq/fe-print.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2004-12-02 23:20:21 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2004-12-02 23:20:21 +0000
commit5d7a555d0f42bce2a3ac05ea4fc32e6781803f1f (patch)
tree05a64689c10818d16bac5bd33be19899c64aa329 /src/interfaces/libpq/fe-print.c
parent9b711e766ea3f9e23a5b3a4c4ff828ec9e5f329b (diff)
downloadpostgresql-5d7a555d0f42bce2a3ac05ea4fc32e6781803f1f.tar.gz
postgresql-5d7a555d0f42bce2a3ac05ea4fc32e6781803f1f.zip
Code review for recent libpq changes. Be more careful about error
handling in SIGPIPE processing; avoid unnecessary pollution of application link-symbol namespace; spell 'pointer to function' in the conventional way.
Diffstat (limited to 'src/interfaces/libpq/fe-print.c')
-rw-r--r--src/interfaces/libpq/fe-print.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/interfaces/libpq/fe-print.c b/src/interfaces/libpq/fe-print.c
index 9992de533d7..8c2ce003ac8 100644
--- a/src/interfaces/libpq/fe-print.c
+++ b/src/interfaces/libpq/fe-print.c
@@ -10,7 +10,7 @@
* didn't really belong there.
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/interfaces/libpq/fe-print.c,v 1.56 2004/12/02 15:32:54 momjian Exp $
+ * $PostgreSQL: pgsql/src/interfaces/libpq/fe-print.c,v 1.57 2004/12/02 23:20:20 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -193,8 +193,8 @@ PQprint(FILE *fout,
{
usePipe = 1;
#ifdef ENABLE_THREAD_SAFETY
- pq_block_sigpipe(&osigset, &sigpipe_pending);
- sigpipe_masked = true;
+ if (pq_block_sigpipe(&osigset, &sigpipe_pending) == 0)
+ sigpipe_masked = true;
#else
#ifndef WIN32
oldsigpipehandler = pqsignal(SIGPIPE, SIG_IGN);
@@ -316,8 +316,9 @@ PQprint(FILE *fout,
pclose(fout);
#endif
#ifdef ENABLE_THREAD_SAFETY
+ /* we can't easily verify if EPIPE occurred, so say it did */
if (sigpipe_masked)
- pq_reset_sigpipe(&osigset, sigpipe_pending);
+ pq_reset_sigpipe(&osigset, sigpipe_pending, true);
#else
#ifndef WIN32
pqsignal(SIGPIPE, oldsigpipehandler);