diff options
author | Matthias Sohn <matthias.sohn@sap.com> | 2024-09-06 12:26:44 +0200 |
---|---|---|
committer | Matthias Sohn <matthias.sohn@sap.com> | 2024-09-06 12:27:02 +0200 |
commit | e5d2898997462e0f2409c09497ab62c6cda2dbaf (patch) | |
tree | 304021423f1bead1d33d879ddbecc6b9ff052c52 /org.eclipse.jgit | |
parent | 3d0d754ae5aa593cba68ea0f50f87e5d1839e54e (diff) | |
download | jgit-e5d2898997462e0f2409c09497ab62c6cda2dbaf.tar.gz jgit-e5d2898997462e0f2409c09497ab62c6cda2dbaf.zip |
Replace custom encoder `Constants#encode` by JDK implementation
Using the implementation provided in the JDK since Java 1.6 by
`String#getBytes(Charset)` reduces JGit maintenance effort and improves
performance.
The method Constants#encode was implemented when JGit still used Java
1.5. See [1].
Kudos to Marcin for proposing to use this improvement in RefWriter [2].
I think it should be used generally.
[1] https://repo.or.cz/jgit.git?a=commit;h=bfa3da225f198b19061158499b1135aff07d85b3
[2] https://eclipse.gerrithub.io/c/eclipse-jgit/jgit/+/1195180
Also-By: Marcin Czech <maczech@gmail.com>
Change-Id: I361ed6286b98351a315b8a8ffc3cb845831d35b2
Diffstat (limited to 'org.eclipse.jgit')
-rw-r--r-- | org.eclipse.jgit/src/org/eclipse/jgit/lib/Constants.java | 13 |
1 files changed, 1 insertions, 12 deletions
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/lib/Constants.java b/org.eclipse.jgit/src/org/eclipse/jgit/lib/Constants.java index 3eb35be79a..c27047f25d 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/lib/Constants.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/lib/Constants.java @@ -14,7 +14,6 @@ package org.eclipse.jgit.lib; import static java.nio.charset.StandardCharsets.UTF_8; -import java.nio.ByteBuffer; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.text.MessageFormat; @@ -734,17 +733,7 @@ public final class Constants { * default character encoding (UTF-8). */ public static byte[] encode(String str) { - final ByteBuffer bb = UTF_8.encode(str); - final int len = bb.limit(); - if (bb.hasArray() && bb.arrayOffset() == 0) { - final byte[] arr = bb.array(); - if (arr.length == len) - return arr; - } - - final byte[] arr = new byte[len]; - bb.get(arr); - return arr; + return str.getBytes(UTF_8); } static { |