summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Dunstan2011-06-04 23:32:10 +0000
committerAndrew Dunstan2011-06-04 23:32:10 +0000
commitccd69b888641441b2332dc928ada1390dd0c318a (patch)
tree6ae11a63d12c70eb8e5460cd085cd5b68463cd31
parent36a1ba9d5e25d74fb50dfaccefe86f406f337a74 (diff)
Allow building with perl 5.14.
Patch from Alex Hunsaker.
-rw-r--r--src/pl/plperl/plperl.c2
-rw-r--r--src/pl/plperl/plperl.h5
2 files changed, 6 insertions, 1 deletions
diff --git a/src/pl/plperl/plperl.c b/src/pl/plperl/plperl.c
index f2e8ad2207..d2c672c7bb 100644
--- a/src/pl/plperl/plperl.c
+++ b/src/pl/plperl/plperl.c
@@ -926,7 +926,7 @@ plperl_trusted_init(void)
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);
diff --git a/src/pl/plperl/plperl.h b/src/pl/plperl/plperl.h
index a375bb5e31..c1236b7efc 100644
--- a/src/pl/plperl/plperl.h
+++ b/src/pl/plperl/plperl.h
@@ -85,6 +85,11 @@
(U32)HeKUTF8(he))
#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
+
/* declare routines from plperl.c for access by .xs files */
HV *plperl_spi_exec(char *, int);
void plperl_return_next(SV *);