aboutsummaryrefslogtreecommitdiff
path: root/cmd/podman
diff options
context:
space:
mode:
Diffstat (limited to 'cmd/podman')
-rw-r--r--cmd/podman/system/events.go16
1 files changed, 11 insertions, 5 deletions
diff --git a/cmd/podman/system/events.go b/cmd/podman/system/events.go
index 57279bb02..693af3e60 100644
--- a/cmd/podman/system/events.go
+++ b/cmd/podman/system/events.go
@@ -101,12 +101,12 @@ func eventsCmd(cmd *cobra.Command, _ []string) error {
for {
select {
- case err := <-errChannel:
- return err
- case event := <-eventChannel:
+ case event, ok := <-eventChannel:
+ if !ok {
+ // channel was closed we can exit
+ return nil
+ }
switch {
- case event == nil:
- // no-op
case doJSON:
jsonStr, err := event.ToJSONString()
if err != nil {
@@ -121,6 +121,12 @@ func eventsCmd(cmd *cobra.Command, _ []string) error {
default:
fmt.Println(event.ToHumanReadable(!noTrunc))
}
+ case err := <-errChannel:
+ // only exit in case of an error,
+ // otherwise keep reading events until the event channel is closed
+ if err != nil {
+ return err
+ }
}
}
}