[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
No known key found for this signature in database
GPG Key ID: 7B6881D965918214
1 changed files with 5 additions and 0 deletions

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 {