diff options
author | Alfred Persson Forsberg <cat@catcream.org> | 2023-06-07 04:16:31 +0200 |
---|---|---|
committer | Joonas Niilola <juippis@gentoo.org> | 2023-06-11 11:44:29 +0300 |
commit | 22d04d652dc28427a492a108a6a849e2d060ea1f (patch) | |
tree | ad7b3d6125abd65b4985a2cee1c85517b3fdf5eb /net-irc/soju/files/soju-0.6.0-fix-dup-upstream-connections.patch | |
parent | net-irc/soju: add 0.6.2 (diff) | |
download | gentoo-22d04d652dc28427a492a108a6a849e2d060ea1f.tar.gz gentoo-22d04d652dc28427a492a108a6a849e2d060ea1f.tar.bz2 gentoo-22d04d652dc28427a492a108a6a849e2d060ea1f.zip |
net-irc/soju: drop 0.6.0, 0.6.0-r1
Signed-off-by: Alfred Persson Forsberg <cat@catcream.org>
Closes: https://github.com/gentoo/gentoo/pull/31336
Signed-off-by: Joonas Niilola <juippis@gentoo.org>
Diffstat (limited to 'net-irc/soju/files/soju-0.6.0-fix-dup-upstream-connections.patch')
-rw-r--r-- | net-irc/soju/files/soju-0.6.0-fix-dup-upstream-connections.patch | 69 |
1 files changed, 0 insertions, 69 deletions
diff --git a/net-irc/soju/files/soju-0.6.0-fix-dup-upstream-connections.patch b/net-irc/soju/files/soju-0.6.0-fix-dup-upstream-connections.patch deleted file mode 100644 index ca1f0fdf41c7..000000000000 --- a/net-irc/soju/files/soju-0.6.0-fix-dup-upstream-connections.patch +++ /dev/null @@ -1,69 +0,0 @@ -https://todo.sr.ht/~emersion/soju/207 - -diff -u b/user.go b/user.go ---- b/user.go -+++ b/user.go -@@ -218,6 +218,7 @@ - net.user.srv.metrics.upstreams.Add(1) - defer net.user.srv.metrics.upstreams.Add(-1) - -+ done := ctx.Done() - ctx, cancel := context.WithTimeout(ctx, time.Minute) - defer cancel() - -@@ -227,6 +228,12 @@ - } - defer uc.Close() - -+ // The context is cancelled by the caller when the network is stopped. -+ go func() { -+ <-done -+ uc.Close() -+ }() -+ - if net.user.srv.Identd != nil { - net.user.srv.Identd.Store(uc.RemoteAddr().String(), uc.LocalAddr().String(), userIdent(&net.user.User)) - defer net.user.srv.Identd.Delete(uc.RemoteAddr().String(), uc.LocalAddr().String()) -@@ -239,9 +246,6 @@ - return fmt.Errorf("failed to register: %w", err) - } - -- // TODO: this is racy with net.stopped. If the network is stopped -- // before the user goroutine receives eventUpstreamConnected, the -- // connection won't be closed. - net.user.events <- eventUpstreamConnected{uc} - defer func() { - net.user.events <- eventUpstreamDisconnected{uc} -@@ -259,6 +263,12 @@ - return - } - -+ ctx, cancel := context.WithCancel(context.TODO()) -+ go func() { -+ <-net.stopped -+ cancel() -+ }() -+ - var lastTry time.Time - backoff := newBackoffer(retryConnectMinDelay, retryConnectMaxDelay, retryConnectJitter) - for { -@@ -273,7 +283,7 @@ - } - lastTry = time.Now() - -- if err := net.runConn(context.TODO()); err != nil { -+ if err := net.runConn(ctx); err != nil { - text := err.Error() - temp := true - var regErr registrationError -@@ -299,10 +309,6 @@ - if !net.isStopped() { - close(net.stopped) - } -- -- if net.conn != nil { -- net.conn.Close() -- } - } - - func (net *network) detach(ch *database.Channel) { |