It can happen that the originator of a crash report doesn't have access
to certain images. When that's the case, ReportCrash won't show the
source info in the crash report stack frames, but only the stack address
and image name.
This patch fixes a bug in the crashlog stackframe parser regular
expression to optionally match the source info group.
rdar://
101934135
Differential Revision: https://reviews.llvm.org/D137466
Signed-off-by: Med Ismail Bennani <medismail.bennani@gmail.com>
r'(.+?)\s+' # img_name
r'(?:' +version+ r'\s+)?' # img_version
r'(0x[0-9a-fA-F]{4,})' # addr (4 chars or more)
- r' +(.*)' # offs
+ r'(?: +(.*))?' # offs
)
null_frame_regex = re.compile(r'^\d+\s+\?\?\?\s+0{4,} +')
image_regex_uuid = re.compile(r'(0x[0-9a-fA-F]+)' # img_lo
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 a.out @foo@ foo + 16 (test.c:3)
-1 a.out @bar@ bar + 9 (test.c:6)
+1 a.out @bar@
2 a.out @main@ main + 20 (test.c:8)
3 libdyld.dylib 0x1000000 start + 1