mirror of
https://github.com/revanced/smali.git
synced 2025-05-05 00:54:25 +02:00
Fix an issue parsing arrays of primitive types when parsing param lists
git-svn-id: https://smali.googlecode.com/svn/trunk@752 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
This commit is contained in:
parent
f65966da4f
commit
1fd0276b78
@ -242,13 +242,16 @@ import org.jf.dexlib.Code.Format.*;
|
||||
case '[':
|
||||
{
|
||||
int i = typeStartIndex;
|
||||
while (str.charAt(++i) == '[');
|
||||
while (str.charAt(++i) != ';');
|
||||
while (str.charAt(++i) == '[');
|
||||
|
||||
token.setType(ARRAY_DESCRIPTOR);
|
||||
token.setText(str.substring(typeStartIndex, i + 1));
|
||||
token.setStopIndex(baseToken.getStartIndex() + i);
|
||||
break;
|
||||
if (str.charAt(i++) == 'L') {
|
||||
while (str.charAt(i++) != ';');
|
||||
}
|
||||
|
||||
token.setType(ARRAY_DESCRIPTOR);
|
||||
token.setText(str.substring(typeStartIndex, i));
|
||||
token.setStopIndex(baseToken.getStartIndex() + i - 1);
|
||||
break;
|
||||
}
|
||||
default:
|
||||
throw new RuntimeException(String.format("Invalid character '\%c' in param list \"\%s\" at position \%d", str.charAt(typeStartIndex), str, typeStartIndex));
|
||||
|
Loading…
x
Reference in New Issue
Block a user