ASM ClassReader leniently handles label offset mismatch (again)

Issue: SPR-17467
master
Juergen Hoeller 6 years ago
parent a3cd7af72d
commit 2ac4355ec0
  1. 5
      spring-core/src/main/java/org/springframework/asm/ClassReader.java

@ -2437,6 +2437,11 @@ public class ClassReader {
* @return a non null Label, which must be equal to labels[bytecodeOffset]. * @return a non null Label, which must be equal to labels[bytecodeOffset].
*/ */
protected Label readLabel(final int bytecodeOffset, final Label[] labels) { protected Label readLabel(final int bytecodeOffset, final Label[] labels) {
// SPRING PATCH: leniently handle offset mismatch
if (bytecodeOffset >= labels.length) {
return new Label();
}
// END OF PATCH
if (labels[bytecodeOffset] == null) { if (labels[bytecodeOffset] == null) {
labels[bytecodeOffset] = new Label(); labels[bytecodeOffset] = new Label();
} }

Loading…
Cancel
Save