File tree 2 files changed +11
-4
lines changed
2 files changed +11
-4
lines changed Original file line number Diff line number Diff line change 91
91
env :
92
92
CARGO_PROFILE_DEV_SPLIT_DEBUGINFO : packed
93
93
CARGO_PROFILE_TEST_SPLIT_DEBUGINFO : packed
94
+ # Test that, on macOS, binaries with no UUID work
95
+ - run : cargo clean && cargo test
96
+ if : matrix.os == 'macos-latest'
97
+ env :
98
+ RUSTFLAGS : " -C link-arg=-Wl,-no_uuid"
94
99
95
100
# Test that, on Linux, packed/unpacked debuginfo both work
96
101
- run : cargo clean && cargo test
Original file line number Diff line number Diff line change @@ -22,17 +22,19 @@ impl Mapping {
22
22
let map = super :: mmap ( path) ?;
23
23
let ( macho, data) = find_header ( & map) ?;
24
24
let endian = macho. endian ( ) . ok ( ) ?;
25
- let uuid = macho. uuid ( endian, data, 0 ) . ok ( ) ?? ;
25
+ let uuid = macho. uuid ( endian, data, 0 ) . ok ( ) ?;
26
26
27
27
// Next we need to look for a `*.dSYM` file. For now we just probe the
28
28
// containing directory and look around for something that matches
29
29
// `*.dSYM`. Once it's found we root through the dwarf resources that it
30
30
// contains and try to find a macho file which has a matching UUID as
31
31
// the one of our own file. If we find a match that's the dwarf file we
32
32
// want to return.
33
- if let Some ( parent) = path. parent ( ) {
34
- if let Some ( mapping) = Mapping :: load_dsym ( parent, uuid) {
35
- return Some ( mapping) ;
33
+ if let Some ( uuid) = uuid {
34
+ if let Some ( parent) = path. parent ( ) {
35
+ if let Some ( mapping) = Mapping :: load_dsym ( parent, uuid) {
36
+ return Some ( mapping) ;
37
+ }
36
38
}
37
39
}
38
40
You can’t perform that action at this time.
0 commit comments