From 4b833d080b56e69127567478298d3dbbf28a58b8 Mon Sep 17 00:00:00 2001
From: Tom Lane <tgl@sss.pgh.pa.us>
Date: Mon, 27 Jan 2003 00:23:38 +0000
Subject: [PATCH] Prevent core dump when die_horribly() is called with null AH
 pointer. Problem reported and fixed by Oliver Elphick.

---
 src/bin/pg_dump/pg_backup_archiver.c | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/src/bin/pg_dump/pg_backup_archiver.c b/src/bin/pg_dump/pg_backup_archiver.c
index 2b38141db83..52202c7df56 100644
--- a/src/bin/pg_dump/pg_backup_archiver.c
+++ b/src/bin/pg_dump/pg_backup_archiver.c
@@ -15,7 +15,7 @@
  *
  *
  * IDENTIFICATION
- *		$Header: /cvsroot/pgsql/src/bin/pg_dump/pg_backup_archiver.c,v 1.65 2003/01/13 04:28:55 inoue Exp $
+ *		$Header: /cvsroot/pgsql/src/bin/pg_dump/pg_backup_archiver.c,v 1.66 2003/01/27 00:23:38 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -1379,14 +1379,15 @@ static void
 _die_horribly(ArchiveHandle *AH, const char *modulename, const char *fmt, va_list ap)
 {
 	_write_msg(modulename, fmt, ap);
-	if (AH->public.verbose)
-		write_msg(NULL, "*** aborted because of error\n");
 
-	if (AH)
+	if (AH) {
+		if (AH->public.verbose)
+			write_msg(NULL, "*** aborted because of error\n");
 		if (AH->connection)
 			PQfinish(AH->connection);
-	if (AH->blobConnection)
-		PQfinish(AH->blobConnection);
+		if (AH->blobConnection)
+			PQfinish(AH->blobConnection);
+	}
 
 	exit(1);
 }
-- 
GitLab