Browse Source

Use array.clone() instead of manual array creation

pull/23992/head
stsypanov 5 years ago committed by Juergen Hoeller
parent
commit
f2b3953d76
  1. 3
      spring-aop/src/main/java/org/springframework/aop/framework/ReflectiveMethodInvocation.java
  2. 4
      spring-context-support/src/main/java/org/springframework/mail/SimpleMailMessage.java
  3. 3
      spring-context/src/main/java/org/springframework/cache/interceptor/SimpleKey.java
  4. 4
      spring-core/src/main/java/org/springframework/util/FastByteArrayOutputStream.java

3
spring-aop/src/main/java/org/springframework/aop/framework/ReflectiveMethodInvocation.java

@ -212,8 +212,7 @@ public class ReflectiveMethodInvocation implements ProxyMethodInvocation, Clonea @@ -212,8 +212,7 @@ public class ReflectiveMethodInvocation implements ProxyMethodInvocation, Clonea
Object[] cloneArguments = this.arguments;
if (this.arguments.length > 0) {
// Build an independent copy of the arguments array.
cloneArguments = new Object[this.arguments.length];
System.arraycopy(this.arguments, 0, cloneArguments, 0, this.arguments.length);
cloneArguments = this.arguments.clone();
}
return invocableClone(cloneArguments);
}

4
spring-context-support/src/main/java/org/springframework/mail/SimpleMailMessage.java

@ -276,9 +276,7 @@ public class SimpleMailMessage implements MailMessage, Serializable { @@ -276,9 +276,7 @@ public class SimpleMailMessage implements MailMessage, Serializable {
}
private static String[] copy(String[] state) {
String[] copy = new String[state.length];
System.arraycopy(state, 0, copy, 0, state.length);
return copy;
return state.clone();
}
}

3
spring-context/src/main/java/org/springframework/cache/interceptor/SimpleKey.java vendored

@ -48,8 +48,7 @@ public class SimpleKey implements Serializable { @@ -48,8 +48,7 @@ public class SimpleKey implements Serializable {
*/
public SimpleKey(Object... elements) {
Assert.notNull(elements, "Elements must not be null");
this.params = new Object[elements.length];
System.arraycopy(elements, 0, this.params, 0, elements.length);
this.params = elements.clone();
this.hashCode = Arrays.deepHashCode(this.params);
}

4
spring-core/src/main/java/org/springframework/util/FastByteArrayOutputStream.java

@ -206,9 +206,7 @@ public class FastByteArrayOutputStream extends OutputStream { @@ -206,9 +206,7 @@ public class FastByteArrayOutputStream extends OutputStream {
*/
public byte[] toByteArray() {
byte[] bytesUnsafe = toByteArrayUnsafe();
byte[] ret = new byte[bytesUnsafe.length];
System.arraycopy(bytesUnsafe, 0, ret, 0, bytesUnsafe.length);
return ret;
return bytesUnsafe.clone();
}
/**

Loading…
Cancel
Save