diff --git a/service.go b/service.go index e2d31925..8cd06472 100644 --- a/service.go +++ b/service.go @@ -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 {