| commit | f35e3a4dd2a34d1d47fac5b66210a40e2d374a79 | [log] [tgz] |
|---|---|---|
| author | Nicholas S. Husin <nsh@golang.org> | Fri Oct 24 16:26:54 2025 -0400 |
| committer | Nicholas Husin <nsh@golang.org> | Fri Oct 24 15:04:30 2025 -0700 |
| tree | 4289d0e2c4f1c976654431bed7f6b1b6823cd316 | |
| parent | 89adc90ac46a688eeda3a4a95b71acf073bd059c [diff] |
http2: fix weight overflow in RFC 7540 write scheduler We use uint8 (0-255, inclusive) to represent the RFC 7540 priorities weight (1-256, inclusive). To account for the difference, we add 1 to the uint8 weight value within sortPriorityNodeSiblingsRFC7540. However, the addition was done before converting the uint8 type to float. As a result, when provided a maximum weight value, overflow will happen and will cause the scheduler to treat the maximum weight as a minimum weight instead. This CL fixes the issue by making sure the addition happens after the type conversion. Change-Id: I404e87e5ad85fa06d5fa49cda613c93ac8847bdc Reviewed-on: https://go-review.googlesource.com/c/net/+/714742 LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Damien Neil <dneil@google.com> Reviewed-by: Nicholas Husin <husin@google.com>
This repository holds supplementary Go networking packages.
This repository uses Gerrit for code changes. To learn how to submit changes to this repository, see https://go.dev/doc/contribute.
The git repository is https://go.googlesource.com/net.
The main issue tracker for the net repository is located at https://go.dev/issues. Prefix your issue with “x/net:” in the subject line, so it is easy to find.