diff options
author | 6543 <6543@obermui.de> | 2020-09-06 17:37:53 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-09-06 11:37:53 -0400 |
commit | 0c6a8027315e704011bacb7bfd8158fe36470cda (patch) | |
tree | 8d73f8fa429ee0e8b2ddb1e6609be8460f0dd01d /vendor/golang.org/x/time | |
parent | 0ed5e103fef5986fcbbb7c208cc015727f4a79dd (diff) | |
download | gitea-0c6a8027315e704011bacb7bfd8158fe36470cda.tar.gz gitea-0c6a8027315e704011bacb7bfd8158fe36470cda.zip |
[Vendor] Update xanzy/go-gitlab v0.31.0 => v0.37.0 (#12701)
* update github.com/xanzy/go-gitlab v0.31.0 => v0.37.0
* vendor
* adapt changes
Co-authored-by: techknowlogick <techknowlogick@gitea.io>
Diffstat (limited to 'vendor/golang.org/x/time')
-rw-r--r-- | vendor/golang.org/x/time/rate/rate.go | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/vendor/golang.org/x/time/rate/rate.go b/vendor/golang.org/x/time/rate/rate.go index a114b1aa50..a98fe77827 100644 --- a/vendor/golang.org/x/time/rate/rate.go +++ b/vendor/golang.org/x/time/rate/rate.go @@ -53,10 +53,9 @@ func Every(interval time.Duration) Limit { // // The methods AllowN, ReserveN, and WaitN consume n tokens. type Limiter struct { - limit Limit - burst int - mu sync.Mutex + limit Limit + burst int tokens float64 // last is the last time the limiter's tokens field was updated last time.Time @@ -76,6 +75,8 @@ func (lim *Limiter) Limit() Limit { // Burst values allow more events to happen at once. // A zero Burst allows no events, unless limit == Inf. func (lim *Limiter) Burst() int { + lim.mu.Lock() + defer lim.mu.Unlock() return lim.burst } @@ -229,7 +230,7 @@ func (lim *Limiter) WaitN(ctx context.Context, n int) (err error) { lim.mu.Unlock() if n > burst && limit != Inf { - return fmt.Errorf("rate: Wait(n=%d) exceeds limiter's burst %d", n, lim.burst) + return fmt.Errorf("rate: Wait(n=%d) exceeds limiter's burst %d", n, burst) } // Check if ctx is already cancelled select { @@ -359,6 +360,7 @@ func (lim *Limiter) reserveN(now time.Time, n int, maxFutureReserve time.Duratio // advance calculates and returns an updated state for lim resulting from the passage of time. // lim is not changed. +// advance requires that lim.mu is held. func (lim *Limiter) advance(now time.Time) (newNow time.Time, newLast time.Time, newTokens float64) { last := lim.last if now.Before(last) { |