(self, line)
| 431 | return [line.rstrip()] |
| 432 | |
| 433 | def process_line_posix(self, line): |
| 434 | self.current_line = line.rstrip() |
| 435 | #0 0x7f6e35cf2e45 (/blah/foo.so+0x11fe45) |
| 436 | stack_trace_line_format = ( |
| 437 | '^( *#([0-9]+) *)(0x[0-9a-f]+) *\((.*)\+(0x[0-9a-f]+)\)') |
| 438 | match = re.match(stack_trace_line_format, line) |
| 439 | if not match: |
| 440 | return [self.current_line] |
| 441 | if DEBUG: |
| 442 | print line |
| 443 | _, frameno_str, addr, binary, offset = match.groups() |
| 444 | if frameno_str == '0': |
| 445 | # Assume that frame #0 is the first frame of new stack trace. |
| 446 | self.frame_no = 0 |
| 447 | original_binary = binary |
| 448 | if self.binary_name_filter: |
| 449 | binary = self.binary_name_filter(binary) |
| 450 | symbolized_line = self.symbolize_address(addr, binary, offset) |
| 451 | if not symbolized_line: |
| 452 | if original_binary != binary: |
| 453 | symbolized_line = self.symbolize_address(addr, binary, offset) |
| 454 | return self.get_symbolized_lines(symbolized_line) |
| 455 | |
| 456 | |
| 457 | if __name__ == '__main__': |
nothing calls this directly
no test coverage detected