summaryrefslogtreecommitdiff
path: root/libpod/events/nullout.go
diff options
context:
space:
mode:
authorMatthew Heon <matthew.heon@pm.me>2020-07-01 16:21:57 -0400
committerMatthew Heon <matthew.heon@pm.me>2020-07-02 09:57:39 -0400
commit9e4cf6ca513fa0646f33ade14955e1fc4335e176 (patch)
tree9c820378fb4e2d0873ca24da5766691ffc4b6ccd /libpod/events/nullout.go
parent1a1e3f4b24e6f856a5c2e16da0cc34a8191c9403 (diff)
downloadpodman-9e4cf6ca513fa0646f33ade14955e1fc4335e176.tar.gz
podman-9e4cf6ca513fa0646f33ade14955e1fc4335e176.tar.bz2
podman-9e4cf6ca513fa0646f33ade14955e1fc4335e176.zip
Fix `system service` panic from early hangup in events
We weren't actually halting the goroutine that sent events, so it would continue sending even when the channel closed (the most notable cause being early hangup - e.g. Control-c on a curl session). Use a context to cancel the events goroutine and stop sending events. Fixes #6805 Signed-off-by: Matthew Heon <matthew.heon@pm.me>
Diffstat (limited to 'libpod/events/nullout.go')
-rw-r--r--libpod/events/nullout.go6
1 files changed, 5 insertions, 1 deletions
diff --git a/libpod/events/nullout.go b/libpod/events/nullout.go
index f3b36e609..3eca9e8db 100644
--- a/libpod/events/nullout.go
+++ b/libpod/events/nullout.go
@@ -1,5 +1,9 @@
package events
+import (
+ "context"
+)
+
// EventToNull is an eventer type that only performs write operations
// and only writes to /dev/null. It is meant for unittests only
type EventToNull struct{}
@@ -10,7 +14,7 @@ func (e EventToNull) Write(ee Event) error {
}
// Read does nothing. Do not use it.
-func (e EventToNull) Read(options ReadOptions) error {
+func (e EventToNull) Read(ctx context.Context, options ReadOptions) error {
return nil
}