OLD | NEW |
1 # Copyright 2016 The Chromium Authors. All rights reserved. | 1 # Copyright 2016 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 import re | 5 import re |
6 | 6 |
7 from crash.callstack_filters import FilterInlineFunctionFrames | 7 from crash.callstack_filters import FilterInlineFunctionFrames |
8 from crash.stacktrace import CallStack | 8 from crash.stacktrace import CallStack |
9 from crash.stacktrace import Stacktrace | 9 from crash.stacktrace import Stacktrace |
10 from crash.stacktrace_parser import StacktraceParser | 10 from crash.stacktrace_parser import StacktraceParser |
11 from crash.type_enums import CallStackFormatType | 11 from crash.type_enums import CallStackFormatType, CallStackLanguageType |
12 from crash.type_enums import CallStackLanguageType | |
13 | 12 |
14 | 13 |
15 FRACAS_CALLSTACK_START_PATTERN = re.compile(r'CRASHED \[(.*) @ 0x(.*)\]') | 14 FRACAS_CALLSTACK_START_PATTERN = re.compile(r'CRASHED \[(.*) @ 0x(.*)\]') |
16 JAVA_CALLSTACK_START_PATTERN = re.compile(r'\(JAVA\) CRASHED \[(.*) @ 0x(.*)\]') | 15 JAVA_CALLSTACK_START_PATTERN = re.compile(r'\(JAVA\) CRASHED \[(.*) @ 0x(.*)\]') |
17 | 16 |
18 | 17 |
19 class ChromeCrashParser(StacktraceParser): | 18 class ChromeCrashParser(StacktraceParser): |
20 | 19 |
21 def Parse(self, stacktrace_string, deps, signature=None): | 20 def Parse(self, stacktrace_string, deps, signature=None): |
22 """Parse fracas stacktrace string into Stacktrace instance.""" | 21 """Parse fracas stacktrace string into Stacktrace instance.""" |
(...skipping 30 matching lines...) Expand all Loading... |
53 language type). | 52 language type). |
54 """ | 53 """ |
55 if FRACAS_CALLSTACK_START_PATTERN.match(line): | 54 if FRACAS_CALLSTACK_START_PATTERN.match(line): |
56 #Fracas only provide magic signature stack (crash stack). | 55 #Fracas only provide magic signature stack (crash stack). |
57 return True, 0, CallStackFormatType.DEFAULT, CallStackLanguageType.CPP | 56 return True, 0, CallStackFormatType.DEFAULT, CallStackLanguageType.CPP |
58 | 57 |
59 if JAVA_CALLSTACK_START_PATTERN.match(line): | 58 if JAVA_CALLSTACK_START_PATTERN.match(line): |
60 return True, 0, CallStackFormatType.DEFAULT, CallStackLanguageType.JAVA | 59 return True, 0, CallStackFormatType.DEFAULT, CallStackLanguageType.JAVA |
61 | 60 |
62 return False, None, None, None | 61 return False, None, None, None |
OLD | NEW |