diff options
author | Guilhem Moulin <guilhem@fripost.org> | 2019-11-07 03:58:29 +0100 |
---|---|---|
committer | Guilhem Moulin <guilhem@fripost.org> | 2019-11-07 20:36:58 +0100 |
commit | 5b122e3a383c8e7603f1fc2322a6fe5298078a65 (patch) | |
tree | c69350828c0a5753bfabbcbf7586f01cb2c68f52 /lib/Net/IMAP/InterIMAP.pm | |
parent | e8c3b83914fe86edfa9c209de64fcc225c820bc7 (diff) |
libinterimap: Free reference to $self in _start_ssl().
(We don't need the function anymore once the handshake is established).
Otherwise the reference count of that IMAP client never gets to 0 before
the global destruction phase. For interimap, this causes traffic stats
to be printed not by the cleanup() function as intended, but just before
the program exits.
Diffstat (limited to 'lib/Net/IMAP/InterIMAP.pm')
-rw-r--r-- | lib/Net/IMAP/InterIMAP.pm | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/Net/IMAP/InterIMAP.pm b/lib/Net/IMAP/InterIMAP.pm index dd4134d..9c95109 100644 --- a/lib/Net/IMAP/InterIMAP.pm +++ b/lib/Net/IMAP/InterIMAP.pm @@ -1690,6 +1690,7 @@ sub _start_ssl($$) { } @$self{qw/_SSL _SSL_CTX/} = ($ssl, $ctx); + undef $self; # the verify callback has reference to $self, free it now } |