1 | *** src/pl/plperl/plperl.c |
---|
2 | --- src/pl/plperl/plperl.c |
---|
3 | *************** |
---|
4 | *** 700,706 **** plperl_trusted_init(void) |
---|
5 | if (!isGV_with_GP(sv) || !GvCV(sv)) |
---|
6 | continue; |
---|
7 | SvREFCNT_dec(GvCV(sv)); /* free the CV */ |
---|
8 | ! GvCV(sv) = NULL; /* prevent call via GV */ |
---|
9 | } |
---|
10 | hv_clear(stash); |
---|
11 | /* invalidate assorted caches */ |
---|
12 | --- 700,706 ---- |
---|
13 | if (!isGV_with_GP(sv) || !GvCV(sv)) |
---|
14 | continue; |
---|
15 | SvREFCNT_dec(GvCV(sv)); /* free the CV */ |
---|
16 | ! GvCV_set(sv, NULL); /* prevent call via GV */ |
---|
17 | } |
---|
18 | hv_clear(stash); |
---|
19 | /* invalidate assorted caches */ |
---|
20 | *** src/pl/plperl/plperl.h |
---|
21 | --- src/pl/plperl/plperl.h |
---|
22 | *************** |
---|
23 | *** 43,48 **** |
---|
24 | --- 43,53 ---- |
---|
25 | #undef bool |
---|
26 | #endif |
---|
27 | |
---|
28 | + /* supply GvCV_set if it's missing - ppport.h doesn't supply it, unfortunately */ |
---|
29 | + #ifndef GvCV_set |
---|
30 | + #define GvCV_set(gv, cv) (GvCV(gv) = cv) |
---|
31 | + #endif |
---|
32 | + |
---|
33 | /* routines from spi_internal.c */ |
---|
34 | int spi_DEBUG(void); |
---|
35 | int spi_LOG(void); |
---|