1
0
mirror of synced 2026-02-06 19:05:55 +00:00

events: prevent defer in loop

Signed-off-by: Hidde Beydals <hidde@hhh.computer>
This commit is contained in:
Hidde Beydals
2023-03-09 13:54:18 +01:00
parent 34220fd514
commit c0916edc44

View File

@@ -199,7 +199,6 @@ func eventsCmdWatchRun(ctx context.Context, kubeclient client.WithWatch, listOpt
if err != nil { if err != nil {
return err return err
} }
defer eventWatch.Stop()
firstIteration := true firstIteration := true
@@ -234,15 +233,19 @@ func eventsCmdWatchRun(ctx context.Context, kubeclient client.WithWatch, listOpt
if err != nil { if err != nil {
return err return err
} }
defer refEventWatch.Stop() go func() {
go receiveEventChan(ctx, refEventWatch, handleEvent) err := receiveEventChan(ctx, refEventWatch, handleEvent)
if err != nil {
logger.Failuref("error watching events: %s", err.Error())
}
}()
} }
return receiveEventChan(ctx, eventWatch, handleEvent) return receiveEventChan(ctx, eventWatch, handleEvent)
} }
func receiveEventChan(ctx context.Context, eventWatch watch.Interface, f func(e watch.Event) error) error { func receiveEventChan(ctx context.Context, eventWatch watch.Interface, f func(e watch.Event) error) error {
defer eventWatch.Stop()
for { for {
select { select {
case e, ok := <-eventWatch.ResultChan(): case e, ok := <-eventWatch.ResultChan():