aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--conn_pool.go6
1 files changed, 6 insertions, 0 deletions
diff --git a/conn_pool.go b/conn_pool.go
index 147c022..8d20ac5 100644
--- a/conn_pool.go
+++ b/conn_pool.go
@@ -54,5 +54,11 @@ func (pool *ConnPool) Put(conn *imapclient.Client) (token string, err error) {
}
pool.conns[token] = conn
+
+ go func() {
+ <-conn.LoggedOut()
+ delete(pool.conns, token)
+ }()
+
return token, nil
}