[service] check for error returned by impl

otherwise, we mark it as started when it is not in fact
This commit is contained in:
Anton Kaliaev
2017-03-27 20:46:46 +04:00
parent 75a539ae3d
commit c46ffe39a8

View File

@ -94,6 +94,11 @@ func (bs *BaseService) Start() (bool, error) {
}
}
err := bs.impl.OnStart()
if err != nil {
// revert flag
atomic.StoreUint32(&bs.started, 0)
return false, err
}
return true, err
} else {
if bs.log != nil {