aboutsummaryrefslogtreecommitdiff
path: root/vendor/golang.org/x/net/http2/flow.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/golang.org/x/net/http2/flow.go')
-rw-r--r--vendor/golang.org/x/net/http2/flow.go10
1 files changed, 5 insertions, 5 deletions
diff --git a/vendor/golang.org/x/net/http2/flow.go b/vendor/golang.org/x/net/http2/flow.go
index 957de25..cea601f 100644
--- a/vendor/golang.org/x/net/http2/flow.go
+++ b/vendor/golang.org/x/net/http2/flow.go
@@ -41,10 +41,10 @@ func (f *flow) take(n int32) {
// add adds n bytes (positive or negative) to the flow control window.
// It returns false if the sum would exceed 2^31-1.
func (f *flow) add(n int32) bool {
- remain := (1<<31 - 1) - f.n
- if n > remain {
- return false
+ sum := f.n + n
+ if (sum > n) == (f.n > 0) {
+ f.n = sum
+ return true
}
- f.n += n
- return true
+ return false
}