From 5ac1eac2a6355b090d074489f4f11b5b844c3274 Mon Sep 17 00:00:00 2001
From: Tom Lane <tgl@sss.pgh.pa.us>
Date: Wed, 28 Jun 2000 06:05:36 +0000
Subject: [PATCH] Suppress memory leak in COPY WITH OIDS TO wherever.

---
 src/backend/commands/copy.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/src/backend/commands/copy.c b/src/backend/commands/copy.c
index e29ed167963..177b339be8c 100644
--- a/src/backend/commands/copy.c
+++ b/src/backend/commands/copy.c
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/backend/commands/copy.c,v 1.115 2000/06/17 21:48:42 tgl Exp $
+ *	  $Header: /cvsroot/pgsql/src/backend/commands/copy.c,v 1.116 2000/06/28 06:05:36 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -475,10 +475,11 @@ CopyTo(Relation rel, bool binary, bool oids, FILE *fp, char *delim, char *null_p
 
 		if (oids && !binary)
 		{
-			CopySendString(DatumGetCString(DirectFunctionCall1(oidout,
-									ObjectIdGetDatum(tuple->t_data->t_oid))),
-						   fp);
+			string = DatumGetCString(DirectFunctionCall1(oidout,
+									 ObjectIdGetDatum(tuple->t_data->t_oid)));
+			CopySendString(string, fp);
 			CopySendChar(delim[0], fp);
+			pfree(string);
 		}
 
 		for (i = 0; i < attr_count; i++)
-- 
GitLab