zeripath 86863ae939
Prevent timer leaks in Workerpool and others (#11333) (#11340)
There is a potential memory leak in `Workerpool` due to the intricacies of
`time.Timer` stopping.

Whenever a `time.Timer` is `Stop`ped its channel must be cleared using a
`select` if the result of the `Stop()` is `false`.

Unfortunately in `Workerpool` these were checked the wrong way round.

However, there were a few other places that were not being checked.

Signed-off-by: Andrew Thornton <art27@cantab.net>

Co-authored-by: techknowlogick <techknowlogick@gitea.io>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>

Co-authored-by: techknowlogick <techknowlogick@gitea.io>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
2020-05-09 00:18:39 +08:00
..
2019-08-23 12:40:29 -04:00
2019-08-23 12:40:29 -04:00
2019-06-12 15:41:28 -04:00
2019-12-07 23:36:47 -05:00
2018-11-04 22:20:00 -05:00
2019-06-12 15:41:28 -04:00
2019-08-23 12:40:29 -04:00
2019-11-22 08:03:45 +00:00
2019-03-08 11:42:50 -05:00
2019-08-23 12:40:29 -04:00
2019-08-23 12:40:29 -04:00
2019-08-17 13:10:17 +03:00
2019-06-12 15:41:28 -04:00
2020-01-21 17:24:18 -05:00