With perl-5.8.0-31 and mpage-2.5.2-3, run this Perl script: ----- cut here ----- #!/usr/bin/perl undef $ENV{'MPAGE'}; if (! open(MPAGE, '|-')) { exec('mpage'); } close(MPAGE) || die; ----- cut here ----- If you change "undef $ENV{'MPAGE'}" to "delete $ENV{'MPAGE'}", the coredump goes away. I realize that it is correct to use "delete" and incorrect to use "undef", but I don't think this behavior is reasonable, especially since it worked just fine in perl 5.6.1.
The coredump is in mpage. Reproducible via: MPAGE= mpage The perl difference is "undef $ENV{BAZ}" makes an env variable called BAZ and assigns undef to it, which, in a subshell, becomes the empty string.
If the coredump is in mpage, then the right thing to do is to change the component to mpage, not to close the bug, eh?
Fixed package is mpage-2.5.2-4.
Fix confirmed with mpage-2.5.2-4.