A timer is leaking on every daemon start and stop.
Probably nothing major, but given the amount of
daemon starts/stops during tests, it's better to
be accurate about it.
Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
| ... | ... |
@@ -285,7 +285,10 @@ func (d *Daemon) StartWithLogFile(out *os.File, providedArgs ...string) error {
|
| 285 | 285 |
|
| 286 | 286 |
d.Wait = wait |
| 287 | 287 |
|
| 288 |
- tick := time.Tick(500 * time.Millisecond) |
|
| 288 |
+ ticker := time.NewTicker(500 * time.Millisecond) |
|
| 289 |
+ defer ticker.Stop() |
|
| 290 |
+ tick := ticker.C |
|
| 291 |
+ |
|
| 289 | 292 |
// make sure daemon is ready to receive requests |
| 290 | 293 |
startTime := time.Now().Unix() |
| 291 | 294 |
for {
|
| ... | ... |
@@ -423,7 +426,9 @@ func (d *Daemon) StopWithError() error {
|
| 423 | 423 |
}() |
| 424 | 424 |
|
| 425 | 425 |
i := 1 |
| 426 |
- tick := time.Tick(time.Second) |
|
| 426 |
+ ticker := time.NewTicker(time.Second) |
|
| 427 |
+ defer ticker.Stop() |
|
| 428 |
+ tick := ticker.C |
|
| 427 | 429 |
|
| 428 | 430 |
if err := d.cmd.Process.Signal(os.Interrupt); err != nil {
|
| 429 | 431 |
if strings.Contains(err.Error(), "os: process already finished") {
|