On Wed, 11 May 2022 16:52:07 GMT, Michael McMahon <micha...@openjdk.org> wrote:

>> In relation to 
>> [JDK-8244681](https://bugs.openjdk.java.net/browse/JDK-8244681), please find 
>> here a patch that addresses possibly lossy conversions in java.net.http
>
> src/java.net.http/share/classes/jdk/internal/net/http/hpack/QuickHuffman.java 
> line 739:
> 
>> 737:                         buffer |= (codeValueOf(c) >>> bufferLen); // 
>> append
>> 738:                         bufferLen += (int) len;
>> 739:                         pos++;
> 
> Would it be cleaner to do the cast in the codeLengthOf method, so it returns 
> an int?

I believe the method returns an "unsigned int" - having the method return an 
int would then potentially cause `bufferLen + len <= 64` to yield true when it 
shouldn't. Hopefully @pavelrappo will comment.

-------------

PR: https://git.openjdk.java.net/jdk/pull/8656

Reply via email to