From 2396ba2d2ddfdc5fe8efc8a43ccb57f5edd6b068 Mon Sep 17 00:00:00 2001 From: David Mitchell Date: Fri, 28 Feb 2014 14:37:13 +0000 Subject: copy xhv_rand and xhv_last_rand in threads clone valgrind complains about these fields being uninitialised when cloned into a new thread, because they aren't copied. It's fairly harmless, since these fields are just used to perturb hash key iteration; but for completeness, clone these fields too. Conflicts: sv.c --- sv.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sv.c b/sv.c index 5f3fad3e0d..cd8b6c627a 100644 --- a/sv.c +++ b/sv.c @@ -12356,6 +12356,10 @@ S_sv_dup_common(pTHX_ const SV *const sstr, CLONE_PARAMS *const param) } daux->xhv_name_count = saux->xhv_name_count; +#ifdef PERL_HASH_RANDOMIZE_KEYS + daux->xhv_rand = saux->xhv_rand; + daux->xhv_last_rand = saux->xhv_last_rand; +#endif daux->xhv_riter = saux->xhv_riter; daux->xhv_eiter = saux->xhv_eiter ? he_dup(saux->xhv_eiter, -- cgit v1.2.1