ports/135974: innd core dumps with newer versions of libperl
Dima Panov
Fluffy at fluffy.khv.ru
Wed Jun 24 23:50:30 UTC 2009
On Wednesday 24 June 2009 05:37:12 Steven Schlansker wrote:
> >Number: 135974
> >Category: ports
> >Synopsis: innd core dumps with newer versions of libperl
> >Confidential: no
> >Severity: serious
> >Priority: high
> >Responsible: freebsd-ports-bugs
> >State: open
> >Quarter:
> >Keywords:
> >Date-Required:
> >Class: sw-bug
> >Submitter-Id: current-users
> >Arrival-Date: Tue Jun 23 18:40:01 UTC 2009
> >Closed-Date:
> >Last-Modified:
> >Originator: Steven Schlansker
> >Release: 7.2-RELEASE
>
> >Description:
>
> 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) {
--
Dmitry "Red Fox" Panov @ Home | KDE at FreeBSD Team | FreeBSD since September 1995
Khabarovsk, Russia | Skype:dima.panov | Jabber.org:fluffy.khv | ICQ:1745024
More information about the freebsd-ports-bugs
mailing list