From 79fcde48b229534fd4a5e07834e5e0e84dd38bee Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Sun, 29 Nov 1998 01:51:56 +0000 Subject: [PATCH] Portability fix for old SunOS releases: fflush(NULL) doesn't work there. Fortunately the postmaster only has stdout and stderr to flush. --- src/backend/postmaster/postmaster.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/backend/postmaster/postmaster.c b/src/backend/postmaster/postmaster.c index 07e5060f30..8c35f6eeb6 100644 --- a/src/backend/postmaster/postmaster.c +++ b/src/backend/postmaster/postmaster.c @@ -10,7 +10,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.97 1998/09/01 04:31:21 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.98 1998/11/29 01:51:56 tgl Exp $ * * NOTES * @@ -1289,10 +1289,14 @@ BackendStartup(Port *port) } /* - * Flush all stdio channels just before fork, to avoid double-output - * problems. + * Flush stdio channels just before fork, to avoid double-output problems. + * Ideally we'd use fflush(NULL) here, but there are still a few non-ANSI + * stdio libraries out there (like SunOS 4.1.x) that coredump if we do. + * Presently stdout and stderr are the only stdio output channels used + * by the postmaster, so fflush'ing them should be sufficient. */ - fflush(NULL); + fflush(stdout); + fflush(stderr); if ((pid = fork()) == 0) { /* child */ -- 2.40.0