RFR: 8299807: newStringUTF8NoRepl and getBytesUTF8NoRepl always copy arrays
Sergey Tsypanov
stsypanov at openjdk.org
Mon Jan 9 17:10:54 UTC 2023
On Mon, 9 Jan 2023 03:34:55 GMT, Glavo <duke at openjdk.org> wrote:
> `JavaLangAccess::newStringUTF8NoRepl` and `JavaLangAccess::getBytesUTF8NoRepl` are not implemented correctly. They always copy arrays, rather than avoiding copying as much as possible as javadoc says.
>
> I ran the tier1 test without any new errors.
src/java.base/share/classes/java/lang/String.java line 927:
> 925: byte[] val = s.value();
> 926: byte coder = s.coder();
> 927: if (coder == LATIN1 && isASCII(val)) {
Why don't we just call `s.isLatin1()` instead of `coder == LATIN1 && isASCII(val)`?
-------------
PR: https://git.openjdk.org/jdk/pull/11897
More information about the core-libs-dev
mailing list