Perl / perl5

🐪 The Perl programming language
https://dev.perl.org/perl5/
Other
1.86k stars 527 forks source link

segmentation fault in 5.6.0 with user supplied die handler #1651

Closed p5pRT closed 21 years ago

p5pRT commented 24 years ago

Migrated from rt.perl.org#2891 (status was 'resolved')

Searchable as RT2891$

p5pRT commented 24 years ago

From schwartz@galapagos.cse.psu.edu

Created by schwartz@galapagos.cse.psu.edu

If you use CGI​::Carp (2.61)\, which redefines how error messages are handled\, and then try to use a nonexistant package\, perl 5.6.0 gets a segmentation fault while trying to complain.

% perl -e 'use CGI​::Carp; use NO​::SUCH​::THING;' Segmentation Fault

% dbx ... signal SEGV (no mapping at the fault address) in Perl_sv_setsv at 0xcc3ac 0x000cc3ac​: Perl_sv_setsv+0x186c​: ld [%o0 + 0x8]\, %g2 (dbx) where =>[1] Perl_sv_setsv(0x4840004\, 0x17e130\, 0x1a82d4\, 0x5\, 0xff\, 0x4)\, at 0xcc3ac   [2] Perl_pp_sassign(0x165000\, 0x165000\, 0x199a3c\, 0x199a38\, 0x17e130\, 0x1a82d4)\, at 0xb98ec   [3] Perl_runops_standard(0x1650a8\, 0x0\, 0x165000\, 0x0\, 0x0\, 0xffbef465)\, at 0xb92a4   [4] perl_call_sv(0x165000\, 0x164800\, 0x165000\, 0x165000\, 0x165000\, 0x0)\, at 0x2b3c8   [5] Perl_vcroak(0x165000\, 0x164c00\, 0x165000\, 0x165000\, 0x164c00\, 0x165000)\, at 0xa8588   [6] Perl_croak(0x1408a4\, 0x19c218\, 0x20980000\, 0x1000\, 0x7000000\, 0x6d)\, at 0xa8778   [7] Perl_call_list(0x166130\, 0x173c68\, 0x173cf8\, 0x173c68\, 0x0\, 0x4)\, at 0x2eb74   [8] Perl_newATTRSUB(0x165000\, 0x1\, 0x16cd90\, 0x16cd90\, 0x173c38\, 0x173cf8)\, at 0x7dea4   [9] Perl_utilize(0x195170\, 0x0\, 0x189720\, 0x0\, 0x18a4c0\, 0x188340)\, at 0x69d44   [10] Perl_yyparse(0x165360\, 0x4\, 0x1653b8\, 0x4b0\, 0x258\, 0x174008)\, at 0x4fa28   [11] S_parse_body(0x160000\, 0x164c00\, 0x165000\, 0x0\, 0x166070\, 0x1)\, at 0x2a5e8   [12] perl_parse(0x0\, 0x275cc\, 0x2\, 0xffbef9dc\, 0x0\, 0x2)\, at 0x296e8   [13] main(0x2\, 0x164448\, 0xffbef9dc\, 0x158c00\, 0x0\, 0x0)\, at 0x27578 (dbx)

Perl Info ``` Flags: category=core severity=high Site configuration information for perl v5.6.0: Configured by schwartz at Mon Mar 27 14:51:24 EST 2000. Summary of my perl5 (revision 5.0 version 6 subversion 0) configuration: Platform: osname=solaris, osvers=2.6, archname=sun4-solaris uname='sunos galapagos 5.6 generic_105181-17 sun4u sparc sunw,ultra-30 ' config_args='' hint=recommended, useposix=true, d_sigaction=define usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef useperlio=undef d_sfio=undef uselargefiles=define use64bitint=undef use64bitall=undef uselongdouble=undef usesocks=undef Compiler: cc='cc', optimize='-fast', gccversion= cppflags='-I/usr/local/include -I/opt/local/include' ccflags ='-I/usr/local/include -I/opt/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64' stdchar='unsigned char', d_stdstdio=define, usevfork=false intsize=4, longsize=4, ptrsize=4, doublesize=8 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16 ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=8, usemymalloc=y, prototype=define Linker and Libraries: ld='cc', ldflags =' -L/usr/local/lib -L/opt/local/lib -L/opt/SUNWspro/SC5.0/lib ' libpth=/usr/local/lib /opt/local/lib /opt/SUNWspro/SC5.0/lib /lib /usr/lib /usr/ccs/lib libs=-lsocket -lnsl -ldl -lm -lc -lcrypt -lsec libc=/lib/libc.so, so=so, useshrplib=false, libperl=libperl.a Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags=' ' cccdlflags='-KPIC', lddlflags='-G -L/usr/local/lib -L/opt/local/lib -L/opt/SUNWspro/SC5.0/lib' Locally applied patches: @INC for perl v5.6.0: /usr/local/lib/perl5/5.6.0/sun4-solaris /usr/local/lib/perl5/5.6.0 /usr/local/lib/perl5/site_perl/5.6.0/sun4-solaris /usr/local/lib/perl5/site_perl/5.6.0 /usr/local/lib/perl5/site_perl/5.005/sun4-solaris /usr/local/lib/perl5/site_perl/5.005 /usr/local/lib/perl5/site_perl . Environment for perl v5.6.0: HOME=/home/galapagos/schwartz LANG (unset) LANGUAGE (unset) LC_CTYPE=en_US LD_LIBRARY_PATH (unset) LOGDIR (unset) PATH=/home/galapagos/schwartz/bin:/usr/java1.2/bin:/opt/SUNWspro/bin:/usr/ccs/bin:/u/align/bin:/usr/local/teTeX/bin/sparc-sun-solaris2.6:/usr/local/teTeX-old/bin/sparc-solaris2.5:/usr/local/nmh/bin:/opt/Acrobat4/bin:/usr/local/ImageMagick/bin:/usr/local/tcl/bin:/usr/local/bin:/usr/local/bin/netpbm:/usr/bin:/usr/openwin/bin:/usr/dt/bin:/usr/local/gnu/bin:/usr/proc/bin:/home/galapagos/schwartz/bin:.:/usr/local/sbin:/usr/sbin PERL_BADLANG (unset) SHELL=/usr/local/bin/bash ```
p5pRT commented 21 years ago

From @floatingatoll

As of the perl 5.8/5.9 development track\, this bug has been resolved. Thanks for the report!

- R.

perl -e 'use CGI​::Carp; use NO​::SUCH​::THING;' [Sun Sep 1 16​:30​:27 2002] -e​: Can't locate NO/SUCH/THING.pm in @​INC (@​INC contains​: lib . /home/rs/perl/lib/5.9.0/i686-linux-thread-multi-64all-ld / home/rs/perl/lib/5.9.0 /home/rs/perl/lib/site_perl/5.9.0/i686-linux-thread-multi- 64all-ld /home/rs/perl/lib/site_perl/5.9.0 /home/rs/perl/lib/site_perl .) at -e line 1. [Sun Sep 1 16​:30​:27 2002] -e​: BEGIN failed--compilation aborted at -e line 1.

p5pRT commented 21 years ago

@floatingatoll - Status changed from 'open' to 'resolved'