From cc402116ca156babcd3ef941317f462a96277e3a Mon Sep 17 00:00:00 2001
From: Tom Lane <tgl@sss.pgh.pa.us>
Date: Wed, 9 Mar 2016 23:29:05 -0500
Subject: [PATCH] Remove a couple of useless pstrdup() calls.

There's no point in pstrdup'ing the result of TextDatumGetCString,
since that's necessarily already a freshly-palloc'd C string.

These particular calls are unlikely to be of any consequence
performance-wise, but still they're a bad precedent that can confuse
future patch authors.

Noted by Chapman Flack.
---
 src/backend/foreign/foreign.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/backend/foreign/foreign.c b/src/backend/foreign/foreign.c
index 45180c7414..239849bb0b 100644
--- a/src/backend/foreign/foreign.c
+++ b/src/backend/foreign/foreign.c
@@ -121,14 +121,14 @@ GetForeignServer(Oid serverid)
 							tp,
 							Anum_pg_foreign_server_srvtype,
 							&isnull);
-	server->servertype = isnull ? NULL : pstrdup(TextDatumGetCString(datum));
+	server->servertype = isnull ? NULL : TextDatumGetCString(datum);
 
 	/* Extract server version */
 	datum = SysCacheGetAttr(FOREIGNSERVEROID,
 							tp,
 							Anum_pg_foreign_server_srvversion,
 							&isnull);
-	server->serverversion = isnull ? NULL : pstrdup(TextDatumGetCString(datum));
+	server->serverversion = isnull ? NULL : TextDatumGetCString(datum);
 
 	/* Extract the srvoptions */
 	datum = SysCacheGetAttr(FOREIGNSERVEROID,
-- 
2.50.0