2020-05-08 21:16:05 +05:30
|
|
|
// Copyright 2020 The Gitea Authors. All rights reserved.
|
2022-11-27 23:50:29 +05:30
|
|
|
// SPDX-License-Identifier: MIT
|
2020-05-08 21:16:05 +05:30
|
|
|
|
|
|
|
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
|
|
|
|
}
|