From 814e08e895a037e3f5485000db5964cd68dbfa01 Mon Sep 17 00:00:00 2001
From: Alvaro Herrera <alvherre@alvh.no-ip.org>
Date: Mon, 19 Mar 2012 17:29:05 -0300
Subject: [PATCH] plperl: Package-qualify _TD

Failing to do so causes trigger invocation to fail when they are nested
within a function invocation that changes the current package.

Backpatch to 9.1; previous releases used a different method to obtain
_TD.  Per bug report from Mark Murawski (bug #6511)

Author: Alex Hunsaker
---
 src/pl/plperl/plperl.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/pl/plperl/plperl.c b/src/pl/plperl/plperl.c
index fb23ae2d935..7a92f3d8e28 100644
--- a/src/pl/plperl/plperl.c
+++ b/src/pl/plperl/plperl.c
@@ -2062,7 +2062,7 @@ plperl_call_perl_trigger_func(plperl_proc_desc *desc, FunctionCallInfo fcinfo,
 	ENTER;
 	SAVETMPS;
 
-	TDsv = get_sv("_TD", 0);
+	TDsv = get_sv("main::_TD", 0);
 	if (!TDsv)
 		elog(ERROR, "couldn't fetch $_TD");
 
-- 
GitLab