diff --git a/proxy_runtime.go b/proxy_runtime.go index d34b5b1..cc53b2a 100644 --- a/proxy_runtime.go +++ b/proxy_runtime.go @@ -183,12 +183,6 @@ func (p *Proxy) Stop() { server.Stop() } stopHTTPServer(p) - if p.accessLogger != nil { - p.accessLogger.close() - } - if p.shareLogger != nil { - p.shareLogger.close() - } if p.watcher != nil { p.watcher.Stop() } @@ -216,6 +210,13 @@ func (p *Proxy) Stop() { shutdown.Disconnect() } + if p.accessLogger != nil { + p.accessLogger.close() + } + if p.shareLogger != nil { + p.shareLogger.close() + } + select { case <-p.done: default: diff --git a/runtime_support.go b/runtime_support.go index a6ec110..57c28fc 100644 --- a/runtime_support.go +++ b/runtime_support.go @@ -162,8 +162,6 @@ func (customDiff *CustomDiff) OnLogin(event Event) { event.Miner.SetCustomDiff(value) return } - event.Miner.SetCustomDiff(0) - return } if customDiff == nil { diff --git a/runtime_support_test.go b/runtime_support_test.go index 907c6a1..fcf2ac9 100644 --- a/runtime_support_test.go +++ b/runtime_support_test.go @@ -51,7 +51,7 @@ func TestCustomDiff_OnLogin_Bad(t *testing.T) { func TestCustomDiff_OnLogin_Ugly(t *testing.T) { miner := &Miner{user: "wallet+bad"} NewCustomDiff(100).OnLogin(Event{Miner: miner}) - if miner.User() != "wallet+bad" || miner.CustomDiff() != 0 { - t.Fatalf("expected invalid suffix to preserve user and leave diff unset, got user=%q diff=%d", miner.User(), miner.CustomDiff()) + if miner.User() != "wallet+bad" || miner.CustomDiff() != 100 { + t.Fatalf("expected invalid suffix to preserve user and fall back to global diff, got user=%q diff=%d", miner.User(), miner.CustomDiff()) } }