summaryrefslogtreecommitdiff
path: root/lldb/examples
diff options
context:
space:
mode:
authorGreg Clayton <gclayton@apple.com>2016-12-08 00:22:45 +0000
committerGreg Clayton <gclayton@apple.com>2016-12-08 00:22:45 +0000
commitb6f3de85d30b4766515cfabfee49af85caa0d427 (patch)
tree1eeca20603349d6bb008fa6f7b33c66843c333be /lldb/examples
parent16df3feb0e4831d71d7e4792872bda39536ddc79 (diff)
Improve crashlog.py so it can handle more iOS crashlog files.
<rdar://problem/29191857>
Diffstat (limited to 'lldb/examples')
-rwxr-xr-xlldb/examples/python/crashlog.py11
1 files changed, 11 insertions, 0 deletions
diff --git a/lldb/examples/python/crashlog.py b/lldb/examples/python/crashlog.py
index bb1523523df..abd6aaae778 100755
--- a/lldb/examples/python/crashlog.py
+++ b/lldb/examples/python/crashlog.py
@@ -380,9 +380,15 @@ class CrashLog(symbolication.Symbolicator):
elif line.startswith('Exception Codes:'):
self.thread_exception_data = line[16:].strip()
continue
+ elif line.startswith('Exception Subtype:'): # iOS
+ self.thread_exception_data = line[18:].strip()
+ continue
elif line.startswith('Crashed Thread:'):
self.crashed_thread_idx = int(line[15:].strip().split()[0])
continue
+ elif line.startswith('Triggered by Thread:'): # iOS
+ self.crashed_thread_idx = int(line[20:].strip().split()[0])
+ continue
elif line.startswith('Report Version:'):
self.version = int(line[15:].strip())
continue
@@ -423,6 +429,11 @@ class CrashLog(symbolication.Symbolicator):
app_specific_backtrace = True
idx = int(app_backtrace_match.group(1))
thread = CrashLog.Thread(idx, True)
+ elif line.startswith('Last Exception Backtrace:'): # iOS
+ parse_mode = PARSE_MODE_THREAD
+ app_specific_backtrace = True
+ idx = 1
+ thread = CrashLog.Thread(idx, True)
self.info_lines.append(line.strip())
elif parse_mode == PARSE_MODE_THREAD:
if line.startswith('Thread'):