Skip Menu |

This queue is for tickets about the Tie-RefHash CPAN distribution.

Report information
The Basics
Id: 64025
Status: new
Priority: 0/
Queue: Tie-RefHash

People
Owner: ether [...] cpan.org
Requestors: cjm [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Important
Broken in: 1.38
Fixed in: (no value)



Subject: Leaks references in @thread_object_registry
Tie::RefHash 1.38 contains the line @thread_object_registry = grep { defined } @thread_object_registry; As mentioned in Scalar::Util's docs, this idiom, while it does remove dead weakrefs, also turns the remaining weakrefs into strong references. You'd have to say something like: @thread_object_registry = grep { defined } @thread_object_registry; Scalar::Util::weaken($_) for @thread_object_registry; Or use a method that doesn't involve copying, like looping over the indices and splicing out dead refs.