mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2025-10-03 17:59:46 +02:00
Merge remote-tracking branch 'origin/GP-4977_DecompileJVMArrays'
This commit is contained in:
commit
6a77dc88b4
1 changed files with 3 additions and 2 deletions
|
@ -321,7 +321,7 @@ public class DescriptorDecoder {
|
||||||
*/
|
*/
|
||||||
public static DataType getPointerType(String descriptor, DataTypeManager dtManager) {
|
public static DataType getPointerType(String descriptor, DataTypeManager dtManager) {
|
||||||
int lastBracket = descriptor.lastIndexOf("[");
|
int lastBracket = descriptor.lastIndexOf("[");
|
||||||
String baseTypeOfArray = descriptor.substring(lastBracket + 1, lastBracket + 2);
|
String baseTypeOfArray = descriptor.substring(lastBracket + 1);
|
||||||
DataType baseType = null;
|
DataType baseType = null;
|
||||||
switch (baseTypeOfArray.charAt(0)) {
|
switch (baseTypeOfArray.charAt(0)) {
|
||||||
case BASE_TYPE_BYTE:
|
case BASE_TYPE_BYTE:
|
||||||
|
@ -349,7 +349,8 @@ public class DescriptorDecoder {
|
||||||
baseType = ArrayMethods.getArrayBaseType(JavaClassConstants.T_SHORT, dtManager);
|
baseType = ArrayMethods.getArrayBaseType(JavaClassConstants.T_SHORT, dtManager);
|
||||||
break;
|
break;
|
||||||
case BASE_TYPE_REFERENCE:
|
case BASE_TYPE_REFERENCE:
|
||||||
return dtManager.getPointer(DWordDataType.dataType);
|
baseType = getDataTypeOfDescriptor(baseTypeOfArray, dtManager);
|
||||||
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
throw new IllegalArgumentException(
|
throw new IllegalArgumentException(
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue