| ... | @@ -214,12 +214,12 @@ fn parseSymbols(self: *Dylib, allocator: Allocator) !void { | ... | @@ -214,12 +214,12 @@ fn parseSymbols(self: *Dylib, allocator: Allocator) !void { |
| 214 | const index = self.symtab_cmd_index orelse return; | 214 | const index = self.symtab_cmd_index orelse return; |
| 215 | const symtab_cmd = self.load_commands.items[index].symtab; | 215 | const symtab_cmd = self.load_commands.items[index].symtab; |
| 216 | | 216 | |
| 217 | var symtab = try allocator.alloc(u8, @sizeOf(macho.nlist_64) * symtab_cmd.nsyms); | 217 | const symtab = try allocator.alloc(u8, @sizeOf(macho.nlist_64) * symtab_cmd.nsyms); |
| 218 | defer allocator.free(symtab); | 218 | defer allocator.free(symtab); |
| 219 | _ = try self.file.preadAll(symtab, symtab_cmd.symoff + self.library_offset); | 219 | _ = try self.file.preadAll(symtab, symtab_cmd.symoff + self.library_offset); |
| 220 | const slice = @alignCast(@alignOf(macho.nlist_64), mem.bytesAsSlice(macho.nlist_64, symtab)); | 220 | const slice = @alignCast(@alignOf(macho.nlist_64), mem.bytesAsSlice(macho.nlist_64, symtab)); |
| 221 | | 221 | |
| 222 | var strtab = try allocator.alloc(u8, symtab_cmd.strsize); | 222 | const strtab = try allocator.alloc(u8, symtab_cmd.strsize); |
| 223 | defer allocator.free(strtab); | 223 | defer allocator.free(strtab); |
| 224 | _ = try self.file.preadAll(strtab, symtab_cmd.stroff + self.library_offset); | 224 | _ = try self.file.preadAll(strtab, symtab_cmd.stroff + self.library_offset); |
| 225 | | 225 | |
| ... | @@ -345,14 +345,16 @@ pub fn parseFromStub( | ... | @@ -345,14 +345,16 @@ pub fn parseFromStub( |
| 345 | | 345 | |
| 346 | const umbrella_lib = lib_stub.inner[0]; | 346 | const umbrella_lib = lib_stub.inner[0]; |
| 347 | | 347 | |
| 348 | var id = try Id.default(allocator, umbrella_lib.installName()); | 348 | { |
| 349 | if (umbrella_lib.currentVersion()) |version| { | 349 | var id = try Id.default(allocator, umbrella_lib.installName()); |
| 350 | try id.parseCurrentVersion(version); | 350 | if (umbrella_lib.currentVersion()) |version| { |
| 351 | } | 351 | try id.parseCurrentVersion(version); |
| 352 | if (umbrella_lib.compatibilityVersion()) |version| { | 352 | } |
| 353 | try id.parseCompatibilityVersion(version); | 353 | if (umbrella_lib.compatibilityVersion()) |version| { |
| | 354 | try id.parseCompatibilityVersion(version); |
| | 355 | } |
| | 356 | self.id = id; |
| 354 | } | 357 | } |
| 355 | self.id = id; | | |
| 356 | | 358 | |
| 357 | var umbrella_libs = std.StringHashMap(void).init(allocator); | 359 | var umbrella_libs = std.StringHashMap(void).init(allocator); |
| 358 | defer umbrella_libs.deinit(); | 360 | defer umbrella_libs.deinit(); |