ASM ClassReader leniently handles label offset mismatch (again)
Issue: SPR-17467
This commit is contained in:
parent
a3cd7af72d
commit
2ac4355ec0
|
|
@ -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…
Reference in New Issue