diff options
| -rw-r--r-- | src/pl/plperl/plperl.c | 2 | ||||
| -rw-r--r-- | src/pl/plperl/plperl.h | 5 | 
2 files changed, 6 insertions, 1 deletions
| diff --git a/src/pl/plperl/plperl.c b/src/pl/plperl/plperl.c index 72c4dc271b4..17544893efb 100644 --- a/src/pl/plperl/plperl.c +++ b/src/pl/plperl/plperl.c @@ -874,7 +874,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 6d58f117ca1..1d38d9e6f0a 100644 --- a/src/pl/plperl/plperl.h +++ b/src/pl/plperl/plperl.h @@ -42,6 +42,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 +  /* declare routines from plperl.c for access by .xs files */  HV		   *plperl_spi_exec(char *, int);  void		plperl_return_next(SV *); | 
