From 361eaa185f7b01551290289798088de48ddd0add Mon Sep 17 00:00:00 2001
From: Tom Lane <tgl@sss.pgh.pa.us>
Date: Sat, 1 Feb 2003 00:22:12 +0000
Subject: [PATCH] Prevent core dump from calling Tcl_DontCallWhenDeleted() with
 a null interp pointer.  Per report from Gerhard Hintermayer.

---
 src/interfaces/libpgtcl/pgtclId.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/interfaces/libpgtcl/pgtclId.c b/src/interfaces/libpgtcl/pgtclId.c
index 7ab1b9e24dc..c1b32866d41 100644
--- a/src/interfaces/libpgtcl/pgtclId.c
+++ b/src/interfaces/libpgtcl/pgtclId.c
@@ -13,7 +13,7 @@
  * Portions Copyright (c) 1994, Regents of the University of California
  *
  * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/interfaces/libpgtcl/Attic/pgtclId.c,v 1.39 2003/02/01 00:07:03 tgl Exp $
+ *	  $Header: /cvsroot/pgsql/src/interfaces/libpgtcl/Attic/pgtclId.c,v 1.40 2003/02/01 00:22:12 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -274,8 +274,9 @@ PgDelConnectionId(DRIVER_DEL_PROTO)
 		Tcl_DeleteHashTable(&notifies->notify_hash);
 		if (notifies->conn_loss_cmd)
 			ckfree((void *) notifies->conn_loss_cmd);
-		Tcl_DontCallWhenDeleted(notifies->interp, PgNotifyInterpDelete,
-								(ClientData) notifies);
+		if (notifies->interp)
+			Tcl_DontCallWhenDeleted(notifies->interp, PgNotifyInterpDelete,
+									(ClientData) notifies);
 		ckfree((void *) notifies);
 	}
 
-- 
GitLab