In perl.git, the branch blead has been updated <http://perl5.git.perl.org/perl.git/commitdiff/813d2eb17164751c312a69e7c7c56dc71aad1ff1?hp=ce7c414ee71d82955c799dca38981337cdf77b42>
- Log ----------------------------------------------------------------- commit 813d2eb17164751c312a69e7c7c56dc71aad1ff1 Author: Father Chrysostomos <[email protected]> Date: Sun Mar 1 18:20:53 2015 -0800 [perl #123849] sv.c: Fix sv_clear -Do output We try to print âsv_clear clearing PL_stashcache for '%"SVf"'â, but the sv here is a hash, and we canât do SvPV on it. We need the hashâs name. This has been this way since 103f5a36127. ----------------------------------------------------------------------- Summary of changes: sv.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/sv.c b/sv.c index 45f7066..4b797fe 100644 --- a/sv.c +++ b/sv.c @@ -6612,17 +6612,19 @@ Perl_sv_clear(pTHX_ SV *const orig_sv) PL_last_swash_hv = NULL; } if (HvTOTALKEYS((HV*)sv) > 0) { - const char *name; + const HEK *hek; /* this statement should match the one at the beginning of * hv_undef_flags() */ if ( PL_phase != PERL_PHASE_DESTRUCT - && (name = HvNAME((HV*)sv))) + && (hek = HvNAME_HEK((HV*)sv))) { if (PL_stashcache) { - DEBUG_o(Perl_deb(aTHX_ "sv_clear clearing PL_stashcache for '%"SVf"'\n", - SVfARG(sv))); + DEBUG_o(Perl_deb(aTHX_ + "sv_clear clearing PL_stashcache for '%"HEKf + "'\n", + HEKfARG(hek))); (void)hv_deletehek(PL_stashcache, - HvNAME_HEK((HV*)sv), G_DISCARD); + hek, G_DISCARD); } hv_name_set((HV*)sv, NULL, 0, 0); } -- Perl5 Master Repository
