Subject: bug#43682: 28.0.50; Clean up nnimap server buffers?

From: Lars Ingebrigtsen <[email-masked]>
Date: Thu, 01 Oct 2020 18:01:15 +0200

Eric Abrahamsen <[email-masked]> writes:

> It's possible (I'm not claiming to understand all the code) that all we
> would need to do is fix `gnus-async-wait-for-article' to replace its
> calls to `nntp-find-connection' and `nntp-accept-process-output' with
> something generalized. Those two functions deal with directly with
> `nntp-connection-alist', so we'd need something that would do the
> equivalent with `nnimap-connection-alist'.

Yup.

> Anyway, in the interest of completing this far less ambitious patch: if
> the nnimap connection has timed out, we should remove this connection
> from `nnimap-connection-alist', so this version of the patch does that.
> If async has opened a second connection, I guess we should leave that
> alone, though I don't have too much confidence that the whole process
> will recover gracefully from the main connection dying...

Well, the connections are separate, and there's all kinds of reasons for
the server to close a connection, so...

> +	    (unless (memq (process-status (get-buffer-process buffer))
> +			  '(open run))

Aka `process-live-p'.

Otherwise looks fine to me (but I haven't tested the code).

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no