diff options
author | Nicholas Clark <nick@ccl4.org> | 2005-06-16 22:08:29 +0000 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2005-06-16 22:08:29 +0000 |
commit | 97d630600d8c80a1700f77cb16abf79250239316 (patch) | |
tree | 43067bc420b4b5a736625c7fb63da2960f351230 /ext | |
parent | aeb18a1e6ec30416322d12056d5c9acd228820fd (diff) | |
download | perl-97d630600d8c80a1700f77cb16abf79250239316.tar.gz |
Storing the ixv for magic arrays seems to cause double free errors on
OS X. This all feels like voodoo.
p4raw-id: //depot/perl@24879
Diffstat (limited to 'ext')
-rw-r--r-- | ext/B/B/Bytecode.pm | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/ext/B/B/Bytecode.pm b/ext/B/B/Bytecode.pm index b60651aca8..2d78d73ee2 100644 --- a/ext/B/B/Bytecode.pm +++ b/ext/B/B/Bytecode.pm @@ -233,6 +233,9 @@ sub B::PVIV::bsave { $sv->ROK ? $sv->B::RV::bsave($ix): $sv->B::NULL::bsave($ix); + # See note below in B::PVNV::bsave + return if $sv->isa('B::AV'); + return if $sv->isa('B::HV'); asm "xiv", !ITHREADS && $sv->FLAGS & (SVf_FAKE|SVf_READONLY) ? "0 but true" : $sv->IVX; } |