On Tue, 16 Mar 2021 14:30:39 GMT, Michael McMahon <micha...@openjdk.org> wrote:
>> The fix makes the map in sun.net.httpserver.UnmodifiableHeaders unmodifiable >> by wrapping it in an unmodifiable view. > > src/jdk.httpserver/share/classes/sun/net/httpserver/UnmodifiableHeaders.java > line 60: > >> 58: map.forEach((k, v) -> headers.add(k, v.get(0))); >> 59: return headers.getFirst(key); >> 60: } > > Should be possible to just return a reference to the first String in the map > rather than instantiating a new Headers and populating it just for the > duration of the call. Headers normalizes the key before any get/getFirst, for example Headers line 131: `public List<String> get(Object key) { return map.get(normalize((String)key)); }` I assume we want to maintain this behaviour, but there might be a better way than creating this local Headers? ------------- PR: https://git.openjdk.java.net/jdk/pull/3032