From: Eric Wong Date: Sat, 23 Jan 2021 10:27:48 +0000 (+0000) Subject: lei_to_mail: drop cyclic reference if not using IPC X-Git-Tag: v1.7.0~1320 X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=ea019542d372b4d44169d06951d4dbce23ce207d;p=public-inbox.git lei_to_mail: drop cyclic reference if not using IPC This may fix another interrupt-related segfault I'm occasionally seeing (but so far unable to reproduce). --- diff --git a/lib/PublicInbox/LeiToMail.pm b/lib/PublicInbox/LeiToMail.pm index 43c59da0..438fb175 100644 --- a/lib/PublicInbox/LeiToMail.pm +++ b/lib/PublicInbox/LeiToMail.pm @@ -483,11 +483,14 @@ sub ipc_atfork_prepare { # ordering is unstable at worker exit and may cause segfaults sub reap_gits { my ($self) = @_; + delete $self->{wcb}; for my $git (delete @$self{grep(/\A$$\0/, keys %$self)}) { $git->async_wait_all; } } +sub DESTROY { delete $_[0]->{wcb} } + sub ipc_atfork_child { # runs after IPC::wq_worker_loop my ($self) = @_; $self->SUPER::ipc_atfork_child;