diff options
Diffstat (limited to 'src/nshd/hackers_git/hackers.go')
-rw-r--r-- | src/nshd/hackers_git/hackers.go | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/nshd/hackers_git/hackers.go b/src/nshd/hackers_git/hackers.go index b1fffc6..ecbda7a 100644 --- a/src/nshd/hackers_git/hackers.go +++ b/src/nshd/hackers_git/hackers.go @@ -23,6 +23,7 @@ type Hackers struct { util.NullBackend cfg Config lock sync.RWMutex + workers sync.WaitGroup users map[int32]user passwords map[int32]string @@ -44,11 +45,16 @@ func NewHackers(config Config) *Hackers { if err != nil { return nil } - go o.worker() + o.workers.Add(1) + go func() { + defer o.workers.Done() + o.worker() + }() return &o } func (o *Hackers) Close() { + defer o.workers.Wait() logger.Info("Closing hackers.git session") o.lock.Lock() defer o.lock.Unlock() |