Lines 8348-8357
Link Here
|
8348 |
poolContents, 1, |
8348 |
poolContents, 1, |
8349 |
constantPoolOffsets[utf8index])); |
8349 |
constantPoolOffsets[utf8index])); |
8350 |
int classNameLength = className.length; |
8350 |
int classNameLength = className.length; |
8351 |
System.arraycopy(className, 0, (constantPoolName = new char[classNameLength + 3]), 2, classNameLength); |
8351 |
if (className[0] != '[') { |
8352 |
constantPoolName[0] = '['; |
8352 |
// this is a type name (class or interface). So we add appropriate '[', 'L' and ';'. |
8353 |
constantPoolName[1] = 'L'; |
8353 |
System.arraycopy(className, 0, (constantPoolName = new char[classNameLength + 3]), 2, classNameLength); |
8354 |
constantPoolName[classNameLength + 2] = ';'; |
8354 |
constantPoolName[0] = '['; |
|
|
8355 |
constantPoolName[1] = 'L'; |
8356 |
constantPoolName[classNameLength + 2] = ';'; |
8357 |
} else { |
8358 |
// if class name is already an array, we just need to add one dimension |
8359 |
System.arraycopy(className, 0, (constantPoolName = new char[classNameLength + 1]), 1, classNameLength); |
8360 |
constantPoolName[0] = '['; |
8361 |
} |
8355 |
frame.stackItems[frame.numberOfStackItems - 1] = new VerificationTypeInfo(0, constantPoolName); |
8362 |
frame.stackItems[frame.numberOfStackItems - 1] = new VerificationTypeInfo(0, constantPoolName); |
8356 |
pc += 3; |
8363 |
pc += 3; |
8357 |
break; |
8364 |
break; |