forked from google/enjarify
-
Notifications
You must be signed in to change notification settings - Fork 115
Closed
Description
First time I used the tool on macOS with M1 chips (ARM) on Python 3.9.5.
I got this Traceback for the SymbolTableHolder, where this specific class decompile well with jadx
58000 classes processed
Output written to com.myapp.android-enjarify.jar
com/myapp/android/symbols/SymbolTableHolder$GeneratedSymbolTable.class Traceback (most recent call last):
File "/Users/ebauger/Documents/src_app/enjarify/enjarify/jvm/constantpool.py", line 46, in _get
return d[args]
KeyError: 65534
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/Users/ebauger/Documents/src_app/enjarify/enjarify/jvm/writeclass.py", line 116, in toClassFile
pool, rest_stream = classFileAfterPool(cls, opts=opts)
File "/Users/ebauger/Documents/src_app/enjarify/enjarify/jvm/writeclass.py", line 100, in classFileAfterPool
writeMethods(pool, stream, cls.data.methods, opts=opts)
File "/Users/ebauger/Documents/src_app/enjarify/enjarify/jvm/writeclass.py", line 64, in writeMethods
code_irs.append(writebytecode.getCodeIR(pool, method, opts=opts))
File "/Users/ebauger/Documents/src_app/enjarify/enjarify/jvm/writebytecode.py", line 21, in getCodeIR
irdata = writeir.writeBytecode(pool, method, opts)
File "/Users/ebauger/Documents/src_app/enjarify/enjarify/jvm/writeir.py", line 598, in writeBytecode
VISIT_FUNCS[instr.type](method, dex, instr_d, type_data, block, instr)
File "/Users/ebauger/Documents/src_app/enjarify/enjarify/jvm/writeir.py", line 310, in visitConstString
block.ldc(block.pool.string(val))
File "/Users/ebauger/Documents/src_app/enjarify/enjarify/jvm/constantpool.py", line 80, in string
def string(self, s): return self._get(CONSTANT_String, self.utf8(s))
File "/Users/ebauger/Documents/src_app/enjarify/enjarify/jvm/constantpool.py", line 49, in _get
d[args] = index = self._getInd(low, _width(tag))
File "/Users/ebauger/Documents/src_app/enjarify/enjarify/jvm/constantpool.py", line 127, in _getInd
raise error.ClassfileLimitExceeded()
enjarify.jvm.error.ClassfileLimitExceeded
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/Users/ebauger/Documents/src_app/enjarify/enjarify/jvm/constantpool.py", line 46, in _get
return d[args]
KeyError: b'createSymbolTable'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/Users/ebauger/Documents/src_app/enjarify/enjarify/main.py", line 38, in translate
class_data = writeclass.toClassFile(cls, opts)
File "/Users/ebauger/Documents/src_app/enjarify/enjarify/jvm/writeclass.py", line 119, in toClassFile
pool, rest_stream = classFileAfterPool(cls, opts=options.ALL)
File "/Users/ebauger/Documents/src_app/enjarify/enjarify/jvm/writeclass.py", line 100, in classFileAfterPool
writeMethods(pool, stream, cls.data.methods, opts=opts)
File "/Users/ebauger/Documents/src_app/enjarify/enjarify/jvm/writeclass.py", line 69, in writeMethods
writeMethod(pool, stream, method, code_attrs.get(method))
File "/Users/ebauger/Documents/src_app/enjarify/enjarify/jvm/writeclass.py", line 49, in writeMethod
stream.u16(pool.utf8(method.id.name))
File "/Users/ebauger/Documents/src_app/enjarify/enjarify/jvm/constantpool.py", line 77, in utf8
return self._get(CONSTANT_Utf8, s)
File "/Users/ebauger/Documents/src_app/enjarify/enjarify/jvm/constantpool.py", line 49, in _get
d[args] = index = self._getInd(low, _width(tag))
File "/Users/ebauger/Documents/src_app/enjarify/enjarify/jvm/constantpool.py", line 172, in _getInd
raise error.ClassfileLimitExceeded()
enjarify.jvm.error.ClassfileLimitExceeded
58057 classes translated successfully, 1 classes had errors
Great work btw!
Metadata
Metadata
Assignees
Labels
No labels