ports/135974: innd core dumps with newer versions of libperl
Philip M. Gollucci
pgollucci at p6m7g8.com
Thu Jun 25 02:08:46 UTC 2009
Have you submitted this to p5p ?
Actually its looks like a gcc optimization bug similiar to one that
affected www/mod_perl recently
http://lists.cpan.org/showlist.cgi?name=perl5-porters
>> Building innd-2.4.5 and perl-5.10.0_3 from ports ends up with innd
>> segmentation faulting in libperl.so whenever it tries to start.
>
> --- lib/perl.c.orig 2008-06-30 04:56:57.000000000 +1100
> +++ lib/perl.c 2009-02-11 00:49:49.000000000 +1000
> @@ -110,14 +110,18 @@
> if (PerlCode == NULL) {
> /* Perl waits on standard input if not called with '-e'. */
> int argc = 3;
> - const char *argv[] = { "innd", "-e", "0", NULL };
> - char *env[] = { NULL };
> + const char *argv_innd[] = { "innd", "-e", "0", NULL };
> + char **argv = (char **)argv_innd; /* Cast required by Perl 5.10. */
> + char **env = { NULL };
> #ifdef PERL_SYS_INIT3
> PERL_SYS_INIT3(&argc, &argv, &env);
> #endif
> PerlCode = perl_alloc();
> perl_construct(PerlCode);
> - perl_parse(PerlCode, xs_init, argc, (char **)argv, env) ;
> +#ifdef PERL_EXIT_DESTRUCT_END
> + PL_exit_flags |= PERL_EXIT_DESTRUCT_END;
> +#endif
> + perl_parse(PerlCode, xs_init, argc, argv, env) ;
> }
>
> if (startupfile != NULL && filterfile != NULL) {
>
>
More information about the freebsd-ports-bugs
mailing list