2020-05-08 11:46:05 -04:00
|
|
|
// Copyright 2020 The Gitea Authors. All rights reserved.
|
2022-11-27 13:20:29 -05:00
|
|
|
// SPDX-License-Identifier: MIT
|
2020-05-08 11:46:05 -04:00
|
|
|
|
|
|
|
package util
|
|
|
|
|
|
|
|
import (
|
|
|
|
"time"
|
|
|
|
)
|
|
|
|
|
|
|
|
// StopTimer is a utility function to safely stop a time.Timer and clean its channel
|
|
|
|
func StopTimer(t *time.Timer) bool {
|
|
|
|
stopped := t.Stop()
|
|
|
|
if !stopped {
|
|
|
|
select {
|
|
|
|
case <-t.C:
|
|
|
|
default:
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return stopped
|
|
|
|
}
|