[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[tor-commits] [goptlib/master] Exit immediately after SIGTERM even if no handlers are running.
commit 7d56ec4f381e8b1aedfda360594e35a5731b5337
Author: David Fifield <david@xxxxxxxxxxxxxxx>
Date: Tue Mar 20 23:14:16 2018 -0700
Exit immediately after SIGTERM even if no handlers are running.
The loop logic assumed that there was at least one handler running when
a signal was received; if there were none, it would wait forever for a
handler event to happen.
Cf. https://bugs.torproject.org/24875
---
examples/dummy-client/dummy-client.go | 7 ++-----
examples/dummy-server/dummy-server.go | 7 ++-----
2 files changed, 4 insertions(+), 10 deletions(-)
diff --git a/examples/dummy-client/dummy-client.go b/examples/dummy-client/dummy-client.go
index de7f367..4812a9b 100644
--- a/examples/dummy-client/dummy-client.go
+++ b/examples/dummy-client/dummy-client.go
@@ -140,10 +140,7 @@ func main() {
for _, ln := range listeners {
ln.Close()
}
- for n := range handlerChan {
- numHandlers += n
- if numHandlers == 0 {
- break
- }
+ for numHandlers > 0 {
+ numHandlers += <-handlerChan
}
}
diff --git a/examples/dummy-server/dummy-server.go b/examples/dummy-server/dummy-server.go
index aea4df4..db24fab 100644
--- a/examples/dummy-server/dummy-server.go
+++ b/examples/dummy-server/dummy-server.go
@@ -132,10 +132,7 @@ func main() {
for _, ln := range listeners {
ln.Close()
}
- for n := range handlerChan {
- numHandlers += n
- if numHandlers == 0 {
- break
- }
+ for numHandlers > 0 {
+ numHandlers += <-handlerChan
}
}
_______________________________________________
tor-commits mailing list
tor-commits@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits