diff options
author | Nicholas Clark <nick@ccl4.org> | 2021-09-11 10:11:21 +0000 |
---|---|---|
committer | Paul Evans <leonerd@leonerd.org.uk> | 2021-09-11 13:04:25 +0100 |
commit | c1d304d234269da7c796c3a2df9f816ab377d4ba (patch) | |
tree | b9c31db03dfca0749fc3ec6310f7def94e8b8b68 /installhtml | |
parent | e3dd969a9d98d3f8789cc6513a31ed4ca00fa884 (diff) | |
download | perl-c1d304d234269da7c796c3a2df9f816ab377d4ba.tar.gz |
Fix a leak when copying a STATIC COW SV to a stringified SV
This is minor a a regression introduced by commit 914bb57489325d34:
Define a third kind of COW state; STATIC
...
sv_setsv_flags() and sv_setsv_cow() will preserve this state
There was a small omission in the copy code - it didn't handle the case where
the destination SV owned a string buffer already. This is actually
relatively rare - triggering it requires a scalar in code path that is
assigned both strings and booleans. Minimal test case is:
my $got = 1;
$got .= "";
$got = ref "";
cut down from &is in t/comp/parser.t
Diffstat (limited to 'installhtml')
0 files changed, 0 insertions, 0 deletions