From: Nicholas Clark Date: Fri, 17 Oct 2003 18:44:28 +0000 (+0000) Subject: Plan C rough edge smoothing - forgot to turn on the "has key flags" X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=bb443f97c2b5dfbb53285f377a01d882f53de1c7;p=p5sagit%2Fp5-mst-13.2.git Plan C rough edge smoothing - forgot to turn on the "has key flags" flag on the hash when rehashing. Can turn off the "rehasing" flag if the hash is cleared p4raw-id: //depot/perl@21474 --- diff --git a/hv.c b/hv.c index 58799d5..b786b32 100644 --- a/hv.c +++ b/hv.c @@ -1532,6 +1532,7 @@ S_hsplit(pTHX_ HV *hv) xhv->xhv_fill = 0; HvSHAREKEYS_off(hv); HvREHASH_on(hv); + HvHASKFLAGS_on(hv); aep = (HE **) xhv->xhv_array; @@ -1854,6 +1855,7 @@ Perl_hv_clear(pTHX_ HV *hv) mg_clear((SV*)hv); HvHASKFLAGS_off(hv); + HvREHASH_off(hv); } STATIC void