I believe I have finally found what is going on, somewhat.

Seems that calling Perl_load_module(aTHX_, flags, SV *name, SV *version, ...)
should be safe, but it seems something is strange in how it's dealing with
va_arg arguments.

I've found that this patch seems to get rid of that segfault on my setup (but
t/filter/both_str_req_add.t still fails occasionally)

Index: src/modules/perl/modperl_util.c
===================================================================
RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_util.c,v
retrieving revision 1.83
diff -u -I$Id -r1.83 modperl_util.c
--- src/modules/perl/modperl_util.c     16 Sep 2004 16:36:29 -0000      1.83
+++ src/modules/perl/modperl_util.c     6 Oct 2004 20:48:10 -0000
@@ -714,7 +714,8 @@
      */
     Perl_load_module(aTHX_ PERL_LOADMOD_NOIMPORT,
                      newSVpvn("B::Deparse", 10),
-                     newSVnv(SvOBJECT((SV*)cv) ? 0.61 : 0.60));
+                     newSVnv(SvOBJECT((SV*)cv) ? 0.61 : 0.60),
+                     Nullsv);

     ENTER;
     SAVETMPS;


P.S. I've attached a small module that demonstrates the segv behaviour

Attachment: Bug-LoadModule-0.01.tar.gz
Description: GNU Zip compressed data

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to