diff options
author | Tim Bunce <Tim.Bunce@pobox.com> | 2002-07-15 13:14:54 +0100 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 2002-07-15 13:04:59 +0000 |
commit | 1d773130c7c6730a3a532a4ea9cf508b11194094 (patch) | |
tree | b71f6a42b92091ee4f14b4cef689809b773031f0 /sv.c | |
parent | 08411240a1e5278b0232e1455d984110b1c5343b (diff) | |
download | perl-1d773130c7c6730a3a532a4ea9cf508b11194094.tar.gz |
Re: Core dump in perl_clone (even with 'use threads;' first) [PATCH]
Message-ID: <20020715121454.F20682@dansat.data-plan.com>
p4raw-id: //depot/perl@17546
Diffstat (limited to 'sv.c')
-rw-r--r-- | sv.c | 6 |
1 files changed, 6 insertions, 0 deletions
@@ -10154,6 +10154,11 @@ perl_clone_using(PerlInterpreter *proto_perl, UV flags, Copy(proto_perl->Inexttype, PL_nexttype, 5, I32); PL_nexttoke = proto_perl->Inexttoke; + /* XXX This is probably masking the deeper issue of why + * SvANY(proto_perl->Ilinestr) can be NULL at this point. For test case: + * http://archive.develooper.com/perl5-porters%40perl.org/msg83298.html + * (A little debugging with a watchpoint on it may help.) + */ if (SvANY(proto_perl->Ilinestr)) { PL_linestr = sv_dup_inc(proto_perl->Ilinestr, param); i = proto_perl->Ibufptr - SvPVX(proto_perl->Ilinestr); @@ -10192,6 +10197,7 @@ perl_clone_using(PerlInterpreter *proto_perl, UV flags, PL_padix_floor = proto_perl->Ipadix_floor; PL_pad_reset_pending = proto_perl->Ipad_reset_pending; + /* XXX See comment on SvANY(proto_perl->Ilinestr) above */ if (SvANY(proto_perl->Ilinestr)) { i = proto_perl->Ilast_uni - SvPVX(proto_perl->Ilinestr); PL_last_uni = SvPVX(PL_linestr) + (i < 0 ? 0 : i); |