Skip to content

Commit b61a813

Browse files
committed
Added support for TC_LONGSTRING
1 parent 59f3bd3 commit b61a813

File tree

1 file changed

+15
-1
lines changed

1 file changed

+15
-1
lines changed

javaobj.py

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -447,6 +447,7 @@ def __init__(self, stream):
447447
self.TC_CLASSDESC: self.do_classdesc,
448448
self.TC_OBJECT: self.do_object,
449449
self.TC_STRING: self.do_string,
450+
self.TC_LONGSTRING: self.do_string_long,
450451
self.TC_ARRAY: self.do_array,
451452
self.TC_CLASS: self.do_class,
452453
self.TC_BLOCKDATA: self.do_blockdata,
@@ -824,7 +825,20 @@ def do_string(self, parent=None, ident=0):
824825
"""
825826
log_debug("[string]", ident)
826827
ba = self._readString()
827-
self._add_reference(ba)
828+
self._add_reference(ba, ident)
829+
return ba
830+
831+
def do_string_long(self, parent=None, ident=0):
832+
"""
833+
Handles a TC_LONGSTRING opcode
834+
835+
:param parent:
836+
:param ident: Log indentation level
837+
:return: A string
838+
"""
839+
log_debug("[long string]", ident)
840+
ba = self._readString("Q")
841+
self._add_reference(ba, ident)
828842
return ba
829843

830844
def do_array(self, parent=None, ident=0):

0 commit comments

Comments
 (0)