Merge pull request #1080 from mlaventure/small-cleanup

Simplify task.Wait() a bit
This commit is contained in:
Michael Crosby 2017-06-23 13:00:19 -07:00 committed by GitHub
commit c6a2f14674

14
task.go
View File

@ -147,29 +147,31 @@ func (t *task) Wait(ctx context.Context) (uint32, error) {
return UnknownExitStatus, err
}
<-t.pidSync
evloop:
var e eventsapi.RuntimeEvent
for {
evt, err := eventstream.Recv()
if err != nil {
return UnknownExitStatus, err
}
switch {
case events.Is(evt.Event, &eventsapi.RuntimeEvent{}):
var e eventsapi.RuntimeEvent
if !events.Is(evt.Event, &eventsapi.RuntimeEvent{}) {
continue
}
if err := events.UnmarshalEvent(evt.Event, &e); err != nil {
return UnknownExitStatus, err
}
if e.Type != tasktypes.Event_EXIT {
continue evloop
continue
}
if e.ID == t.containerID && e.Pid == t.pid {
return e.ExitStatus, nil
}
}
}
}
// Delete deletes the task and its runtime state