瀏覽代碼

SEC-1764: Remove use of Java 6 method Arrays.copyOfRange.

Luke Taylor 14 年之前
父節點
當前提交
89b7b2b935
共有 1 個文件被更改,包括 3 次插入1 次删除
  1. 3 1
      crypto/src/main/java/org/springframework/security/crypto/codec/Utf8.java

+ 3 - 1
crypto/src/main/java/org/springframework/security/crypto/codec/Utf8.java

@@ -22,8 +22,10 @@ public final class Utf8 {
     public static byte[] encode(CharSequence string) {
         try {
             ByteBuffer bytes = CHARSET.newEncoder().encode(CharBuffer.wrap(string));
+            byte[] bytesCopy = new byte[bytes.limit()];
+            System.arraycopy(bytes.array(), 0, bytesCopy, 0, bytes.limit());
 
-            return Arrays.copyOfRange(bytes.array(), 0, bytes.limit());
+            return bytesCopy;
         } catch (CharacterCodingException e) {
             throw new IllegalArgumentException("Encoding failed", e);
         }