summaryrefslogtreecommitdiff
path: root/tools/trace/tinter
diff options
context:
space:
mode:
Diffstat (limited to 'tools/trace/tinter')
-rw-r--r--tools/trace/tinter/tinter.py19
1 files changed, 16 insertions, 3 deletions
diff --git a/tools/trace/tinter/tinter.py b/tools/trace/tinter/tinter.py
index 7c0a6d90..8f368519 100644
--- a/tools/trace/tinter/tinter.py
+++ b/tools/trace/tinter/tinter.py
@@ -20,7 +20,7 @@ class TInter:
def __event_print (self, events, memory):
if len(memory) > 0:
- cmd = int (memory[0:2])
+ cmd = int (memory[0:2], 16)
e = events[cmd]
string = e.string_get()
memory = memory[2:len(memory)]
@@ -32,9 +32,22 @@ class TInter:
string = string.replace('%d', str(int(val, 16)), 1)
return [memory, string]
- def trace_print (self):
+ def __get_last_trace (self, data):
+ while len (data):
+ memory = data.split('f33ff22f')
+ memory = memory[len(memory) - 1]
+ return memory
+
+ def trace_print (self, file=None):
events = self.__events_get ()
- memory = thost_dump_memory()
+
+ if file == None:
+ memory = thost_dump_memory()
+ else:
+ file = open (file, 'r')
+ memory = file.read()
+ file.close()
+ memory = self.__get_last_trace (memory)
while len(memory) > 0:
data = self.__event_print(events, memory)