summaryrefslogtreecommitdiff
path: root/databases/postgresql83-server/files
diff options
context:
space:
mode:
Diffstat (limited to 'databases/postgresql83-server/files')
-rw-r--r--databases/postgresql83-server/files/patch-src-plperl-plperl28
1 files changed, 28 insertions, 0 deletions
diff --git a/databases/postgresql83-server/files/patch-src-plperl-plperl b/databases/postgresql83-server/files/patch-src-plperl-plperl
new file mode 100644
index 000000000000..fc67e6e82be5
--- /dev/null
+++ b/databases/postgresql83-server/files/patch-src-plperl-plperl
@@ -0,0 +1,28 @@
+Obtained from: http://archives.postgresql.org/pgsql-hackers/2011-04/msg01283.php
+Reference: http://search.cpan.org/~jesse/perl-5.14.0/pod/perldelta.pod#GvCV()_and_GvGP()_are_no_longer_lvalues
+
+--- src/pl/plperl/plperl.c.orig 2011-04-15 11:15:53.000000000 +0800
++++ src/pl/plperl/plperl.c 2011-05-19 20:39:34.126713700 +0800
+@@ -685,7 +685,7 @@
+ if (!isGV_with_GP(sv) || !GvCV(sv))
+ continue;
+ SvREFCNT_dec(GvCV(sv)); /* free the CV */
+- GvCV(sv) = NULL; /* prevent call via GV */
++ GvCV_set(sv, NULL); /* prevent call via GV */
+ }
+ hv_clear(stash);
+
+--- src/pl/plperl/plperl.h.orig 2011-04-15 11:15:53.000000000 +0800
++++ src/pl/plperl/plperl.h 2011-05-19 20:39:34.127713548 +0800
+@@ -43,6 +43,11 @@
+ #undef bool
+ #endif
+
++/* supply GvCV_set if it's missing - ppport.h doesn't supply it, unfortunately */
++#ifndef GvCV_set
++#define GvCV_set(gv, cv) (GvCV(gv) = cv)
++#endif
++
+ /* routines from spi_internal.c */
+ int spi_DEBUG(void);
+ int spi_LOG(void);