Browse Source

Tracking ASM master

See gh-23156
pull/23315/head
Juergen Hoeller 7 years ago
parent
commit
7f33344784
  1. 12
      spring-core/src/main/java/org/springframework/asm/Type.java

12
spring-core/src/main/java/org/springframework/asm/Type.java

@ -305,7 +305,8 @@ public final class Type { @@ -305,7 +305,8 @@ public final class Type {
}
if (methodDescriptor.charAt(currentOffset++) == 'L') {
// Skip the argument descriptor content.
currentOffset = methodDescriptor.indexOf(';', currentOffset) + 1;
int semiColumnOffset = methodDescriptor.indexOf(';', currentOffset);
currentOffset = Math.max(currentOffset, semiColumnOffset + 1);
}
++numArgumentTypes;
}
@ -323,7 +324,8 @@ public final class Type { @@ -323,7 +324,8 @@ public final class Type {
}
if (methodDescriptor.charAt(currentOffset++) == 'L') {
// Skip the argument descriptor content.
currentOffset = methodDescriptor.indexOf(';', currentOffset) + 1;
int semiColumnOffset = methodDescriptor.indexOf(';', currentOffset);
currentOffset = Math.max(currentOffset, semiColumnOffset + 1);
}
argumentTypes[currentArgumentTypeIndex++] =
getTypeInternal(methodDescriptor, currentArgumentTypeOffset, currentOffset);
@ -393,7 +395,8 @@ public final class Type { @@ -393,7 +395,8 @@ public final class Type {
}
if (methodDescriptor.charAt(currentOffset++) == 'L') {
// Skip the argument descriptor content.
currentOffset = methodDescriptor.indexOf(';', currentOffset) + 1;
int semiColumnOffset = methodDescriptor.indexOf(';', currentOffset);
currentOffset = Math.max(currentOffset, semiColumnOffset + 1);
}
}
return currentOffset + 1;
@ -737,7 +740,8 @@ public final class Type { @@ -737,7 +740,8 @@ public final class Type {
}
if (methodDescriptor.charAt(currentOffset++) == 'L') {
// Skip the argument descriptor content.
currentOffset = methodDescriptor.indexOf(';', currentOffset) + 1;
int semiColumnOffset = methodDescriptor.indexOf(';', currentOffset);
currentOffset = Math.max(currentOffset, semiColumnOffset + 1);
}
argumentsSize += 1;
}

Loading…
Cancel
Save