INN commit: branches/2.4 (innd/perl.c lib/perl.c nnrpd/perl.c)
INN Commit
Russ_Allbery at isc.org
Mon May 5 08:43:59 UTC 2008
Date: Monday, May 5, 2008 @ 01:43:58
Author: iulius
Revision: 7815
Perl 5.10 support for INN.
Thanks, Jakub Bogusz, for the patch.
Modified:
branches/2.4/innd/perl.c
branches/2.4/lib/perl.c
branches/2.4/nnrpd/perl.c
--------------+
innd/perl.c | 3 ++-
lib/perl.c | 16 ++++++++++------
nnrpd/perl.c | 3 ++-
3 files changed, 14 insertions(+), 8 deletions(-)
Modified: innd/perl.c
===================================================================
--- innd/perl.c 2008-05-05 08:38:38 UTC (rev 7814)
+++ innd/perl.c 2008-05-05 08:43:58 UTC (rev 7815)
@@ -240,6 +240,7 @@
PLstats(void)
{
dSP;
+ char *argv[] = { NULL };
if (perl_get_cv("filter_stats", false) == NULL)
return NULL;
@@ -249,7 +250,7 @@
ENTER;
SAVETMPS;
- perl_call_argv("filter_stats", G_EVAL | G_NOARGS, NULL);
+ perl_call_argv("filter_stats", G_EVAL | G_NOARGS, argv);
SPAGAIN;
result = POPp;
if (result != NULL && *result)
Modified: lib/perl.c
===================================================================
--- lib/perl.c 2008-05-05 08:38:38 UTC (rev 7814)
+++ lib/perl.c 2008-05-05 08:43:58 UTC (rev 7815)
@@ -62,6 +62,7 @@
PerlFilter(bool value)
{
dSP;
+ char *argv[] = { NULL };
if (value == PerlFilterActive)
return true;
@@ -71,7 +72,7 @@
if (perl_get_cv("filter_end", false) != NULL) {
ENTER;
SAVETMPS;
- perl_call_argv("filter_end", G_EVAL | G_DISCARD | G_NOARGS, NULL);
+ perl_call_argv("filter_end", G_EVAL | G_DISCARD | G_NOARGS, argv);
if (SvTRUE(ERRSV)) {
syslog (L_ERROR, "SERVER perl function filter_end died: %s",
SvPV(ERRSV, PL_na));
@@ -172,11 +173,10 @@
ENTER ;
SAVETMPS ;
- argv[0] = filterfile ;
- argv[1] = NULL ;
-
+ argv[0] = NULL;
+
if (perl_get_cv("filter_before_reload", false) != NULL) {
- perl_call_argv("filter_before_reload",G_EVAL|G_DISCARD|G_NOARGS,NULL);
+ perl_call_argv("filter_before_reload", G_EVAL|G_DISCARD|G_NOARGS, argv);
if (SvTRUE(ERRSV)) /* check $@ */ {
syslog (L_ERROR,"SERVER perl function filter_before_reload died: %s",
SvPV(ERRSV, PL_na)) ;
@@ -185,6 +185,9 @@
}
}
+ argv[0] = filterfile ;
+ argv[1] = NULL ;
+
PerlSilence();
perl_call_argv ("_load_", 0, argv) ;
PerlUnSilence();
@@ -209,8 +212,9 @@
PerlFilter (false) ;
}
+ argv[0] = NULL;
if (perl_get_cv("filter_after_reload", false) != NULL) {
- perl_call_argv("filter_after_reload", G_EVAL|G_DISCARD|G_NOARGS, NULL);
+ perl_call_argv("filter_after_reload", G_EVAL|G_DISCARD|G_NOARGS, argv);
if (SvTRUE(ERRSV)) /* check $@ */ {
syslog (L_ERROR,"SERVER perl function filter_after_reload died: %s",
SvPV(ERRSV, PL_na)) ;
Modified: nnrpd/perl.c
===================================================================
--- nnrpd/perl.c 2008-05-05 08:38:38 UTC (rev 7814)
+++ nnrpd/perl.c 2008-05-05 08:43:58 UTC (rev 7815)
@@ -63,6 +63,7 @@
HE *scan;
SV *modswitch;
int OtherSize;
+ char *argv[] = { NULL };
if(!PerlLoaded) {
loadPerl();
@@ -112,7 +113,7 @@
sv_setpv(body, article);
/* Call the filtering function */
- rc = perl_call_argv("filter_post", G_EVAL|G_SCALAR, NULL);
+ rc = perl_call_argv("filter_post", G_EVAL|G_SCALAR, argv);
SPAGAIN;
More information about the inn-committers
mailing list