summaryrefslogtreecommitdiff
path: root/hv.c
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2021-07-26 13:10:30 +0000
committerNicholas Clark <nick@ccl4.org>2021-08-24 14:00:16 +0000
commit3bbdecaa07f04ff3d6aecfe8b02e964ad9dc0fc7 (patch)
treedb57f3519bfd711d1664bc27bac82d52ff3b75a9 /hv.c
parentfa9c4f83b98a97c3f1834e95d3c4e7e3e4a35292 (diff)
downloadperl-3bbdecaa07f04ff3d6aecfe8b02e964ad9dc0fc7.tar.gz
Don't call HvHASKFLAGS_on() in S_hv_delete_common().
We're not changing any keys on the hash, so if it didn't have any keys with flags before the delete, it won't have any afterwards either. I added this line in Nov 2003 as part of commit cd6d36ac47e47079: Move the negative key -> utf8 flag conversion out to hv_delete I don't think that it was correct then, and I don't think that it's correct now.
Diffstat (limited to 'hv.c')
-rw-r--r--hv.c1
1 files changed, 0 insertions, 1 deletions
diff --git a/hv.c b/hv.c
index 9e6ba13362..05ed075aee 100644
--- a/hv.c
+++ b/hv.c
@@ -1183,7 +1183,6 @@ S_hv_delete_common(pTHX_ HV *hv, SV *keysv, const char *key, STRLEN klen,
}
k_flags |= HVhek_WASUTF8 | HVhek_FREEKEY;
}
- HvHASKFLAGS_on(MUTABLE_SV(hv));
}
if (keysv && (SvIsCOW_shared_hash(keysv))) {