Slide 30
Slide 30 text
next;
}
# run atos
symbolize_frames($images,$bt,$is_spindump_report);
if(keys %$bt) {
# run our fancy regex
$process_section = replace_symbolized_frames($process_section,$bt
# read the binary images
my ($images,$first_bundle) = parse_images($process_section, $report_
if ( $opt_verbose ) {
sub parse_images {
my ($log_ref, $report_version, $is_spindump_report) = @_;
my $section = parse_section($log_ref,'Binary Images Description',mu
if (!defined($section)) {
$section = parse_section($log_ref,'\\s*Binary\\s*Images',multil
}
if (!defined($section)) {
'bundlename' => \$4, 'uuid' => \$5, 'path' => \$6);
}
elsif($report_version == 104 || $report_version == 105) { # Kirkwood
# 0x182155000 - 0x1824c6fff CoreFoundation arm64 /Sys
$pat = '
^\s* (\w+) \s* \- \s* (\w+) \s* (?# the range base and extent [1,2] )
(\+)? (?# the application may have a + in front of the name
(.+) (?# bundle name [4] )
\s+ ('.$architectures.') \s+ (?# the image arch [5] )
\([[:xdigit:]]{32})?\>? (?# possible UUID [6] )
\s* (\/.*)\s*$ (?# first fwdslash to end we hope is path [7] )
';
%captures = ( 'base' => \$1, 'extent' => \$2, 'plus' => \$3,
'bundlename' => \$4, 'arch' => \$5, 'uuid' => \$6,
'path' => \$7);
}