FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Match HTTP/2 content-encoding with AsciiString constants instead of toLowerCase by hyperxpro · Pull Request #2207 · AsyncHttpClient/async-http-client · GitHub

Match HTTP/2 content-encoding with AsciiString constants instead of toLowerCase - #2207

Merged
hyperxpro merged 1 commit into
mainfrom
http2-decompressor-ascii-match
Jun 21, 2026
Merged

Match HTTP/2 content-encoding with AsciiString constants instead of toLowerCase#2207
hyperxpro merged 1 commit into
mainfrom
http2-decompressor-ascii-match

Conversation

Copy link
Copy Markdown
Member

Motivation:

The HTTP/2 content decompressor matched the content-encoding header by calling toString().toLowerCase(Locale.ROOT) on every response, allocating a String per response just to test for gzip/deflate.

Modification:

Match case-insensitively in place with AsciiString.containsIgnoreCase against the HttpHeaderValues.GZIP/DEFLATE constants, and use the HttpHeaderNames constants for the header get/remove. AsciiString case-folding is ASCII-only, so it also removes the Turkish-locale concern the Locale.ROOT call guarded against.

Result:

No per-response String allocation when checking content-encoding; the gzip/deflate activation set is unchanged (br/zstd still pass through), with new tests covering the case-insensitive and substring matches.

hyperxpro merged commit 01f9e53 into main Jun 21, 2026
29 of 30 checks passed
hyperxpro deleted the http2-decompressor-ascii-match branch June 21, 2026 18:49
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant


Back | FazBrowse Home | New Git URL