diff options
author | Gurusamy Sarathy <gsar@cpan.org> | 1999-10-14 17:47:35 +0000 |
---|---|---|
committer | Gurusamy Sarathy <gsar@cpan.org> | 1999-10-14 17:47:35 +0000 |
commit | 0cdb207790df717da1f7d2136f6b268baceb3494 (patch) | |
tree | 7a3741814379bd5b2e20aea2f320153c646f75e1 /t/op/runlevel.t | |
parent | 3e5d0dec1210692f67ee4d7c2687147c8f62f366 (diff) | |
download | perl-0cdb207790df717da1f7d2136f6b268baceb3494.tar.gz |
fix POPSTACK panics that ensued from bad interaction between
runlevels and stack of stacks (change#3988 done right);
basically, we pop the runlevel if the stacklevel is not the
same one we started the runlevel with
p4raw-link: @3988 on //depot/perl: a7c6d24429ab2b6db54575a3bdc62c7ed9f881cf
p4raw-id: //depot/perl@4376
Diffstat (limited to 't/op/runlevel.t')
-rwxr-xr-x | t/op/runlevel.t | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/t/op/runlevel.t b/t/op/runlevel.t index a1551775e3..1dc2a234b2 100755 --- a/t/op/runlevel.t +++ b/t/op/runlevel.t @@ -335,3 +335,17 @@ tie my @bar, 'TEST'; print join('|', @bar[0..3]), "\n"; EXPECT foo|fee|fie|foe +######## +package TH; +sub TIEHASH { bless {}, TH } +sub STORE { eval { print "@_[1,2]\n" }; die "bar\n" } +tie %h, TH; +eval { $h{A} = 1; print "never\n"; }; +print $@; +eval { $h{B} = 2; }; +print $@; +EXPECT +A 1 +bar +B 2 +bar |