8011135: (bf) CharBuffer.put(String) is slow because of String.charAt() call for each char
Alan Bateman
Alan.Bateman at oracle.com
Thu Feb 21 17:57:48 UTC 2019
On 21/02/2019 17:49, Brian Burkhalter wrote:
>
>> On Feb 21, 2019, at 9:45 AM, Alan Bateman <Alan.Bateman at oracle.com
>> <mailto:Alan.Bateman at oracle.com>> wrote:
>>
>> On 21/02/2019 17:41, Brian Burkhalter wrote:
>>>
>>>> There are a few other places in the heap buffers that also need to
>>>> be hardened a bit (direct buffers of course need to much more careful).
>>>
>>> Shall I try to include fixing those in this patch?
>>>
>> Probably best to do it as a separate issue. I try to watch for these
>> things with direct buffer classes as these could lead to any number
>> of VM crashes or security issues. It's a less of concern with the
>> heap buffers but would be good to fix if you have cycles.
>
> Updated patch below. It’s a little unclear where to put ‘pos =
> position()’.
remaining() also reads the position so I think you want:
int pos = src.position();
int lim = src.limit();
int rem = (pos <= lim) ? lim - pos : 0;
-Alan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.java.net/pipermail/nio-dev/attachments/20190221/2f77e9bc/attachment-0001.html>
More information about the nio-dev
mailing list