@@ -305,7 +305,8 @@ public static Type[] getArgumentTypes(final String methodDescriptor) {
305
305
}
306
306
if (methodDescriptor .charAt (currentOffset ++) == 'L' ) {
307
307
// Skip the argument descriptor content.
308
- currentOffset = methodDescriptor .indexOf (';' , currentOffset ) + 1 ;
308
+ int semiColumnOffset = methodDescriptor .indexOf (';' , currentOffset );
309
+ currentOffset = Math .max (currentOffset , semiColumnOffset + 1 );
309
310
}
310
311
++numArgumentTypes ;
311
312
}
@@ -323,7 +324,8 @@ public static Type[] getArgumentTypes(final String methodDescriptor) {
323
324
}
324
325
if (methodDescriptor .charAt (currentOffset ++) == 'L' ) {
325
326
// Skip the argument descriptor content.
326
- currentOffset = methodDescriptor .indexOf (';' , currentOffset ) + 1 ;
327
+ int semiColumnOffset = methodDescriptor .indexOf (';' , currentOffset );
328
+ currentOffset = Math .max (currentOffset , semiColumnOffset + 1 );
327
329
}
328
330
argumentTypes [currentArgumentTypeIndex ++] =
329
331
getTypeInternal (methodDescriptor , currentArgumentTypeOffset , currentOffset );
@@ -393,7 +395,8 @@ static int getReturnTypeOffset(final String methodDescriptor) {
393
395
}
394
396
if (methodDescriptor .charAt (currentOffset ++) == 'L' ) {
395
397
// Skip the argument descriptor content.
396
- currentOffset = methodDescriptor .indexOf (';' , currentOffset ) + 1 ;
398
+ int semiColumnOffset = methodDescriptor .indexOf (';' , currentOffset );
399
+ currentOffset = Math .max (currentOffset , semiColumnOffset + 1 );
397
400
}
398
401
}
399
402
return currentOffset + 1 ;
@@ -737,7 +740,8 @@ public static int getArgumentsAndReturnSizes(final String methodDescriptor) {
737
740
}
738
741
if (methodDescriptor .charAt (currentOffset ++) == 'L' ) {
739
742
// Skip the argument descriptor content.
740
- currentOffset = methodDescriptor .indexOf (';' , currentOffset ) + 1 ;
743
+ int semiColumnOffset = methodDescriptor .indexOf (';' , currentOffset );
744
+ currentOffset = Math .max (currentOffset , semiColumnOffset + 1 );
741
745
}
742
746
argumentsSize += 1 ;
743
747
}
0 commit comments