| ... | @@ -847,10 +847,11 @@ const Entry = struct { | ... | @@ -847,10 +847,11 @@ const Entry = struct { |
| 847 | unit.len -| (unit.header_len + unit.trailer_len); | 847 | unit.len -| (unit.header_len + unit.trailer_len); |
| 848 | if (entry_ptr.off + len > end) { | 848 | if (entry_ptr.off + len > end) { |
| 849 | if (entry_ptr.next.unwrap()) |next_entry| { | 849 | if (entry_ptr.next.unwrap()) |next_entry| { |
| 850 | if (entry_ptr.prev.unwrap()) |prev_entry| | 850 | if (entry_ptr.prev.unwrap()) |prev_entry| { |
| 851 | unit.getEntry(prev_entry).next = entry_ptr.next | 851 | const prev_entry_ptr = unit.getEntry(prev_entry); |
| 852 | else | 852 | prev_entry_ptr.next = entry_ptr.next; |
| 853 | unit.first = entry_ptr.next; | 853 | try prev_entry_ptr.pad(unit, sec, dwarf); |
| | 854 | } else unit.first = entry_ptr.next; |
| 854 | const next_entry_ptr = unit.getEntry(next_entry); | 855 | const next_entry_ptr = unit.getEntry(next_entry); |
| 855 | const entry = next_entry_ptr.prev; | 856 | const entry = next_entry_ptr.prev; |
| 856 | next_entry_ptr.prev = entry_ptr.prev; | 857 | next_entry_ptr.prev = entry_ptr.prev; |
| ... | @@ -860,6 +861,7 @@ const Entry = struct { | ... | @@ -860,6 +861,7 @@ const Entry = struct { |
| 860 | entry_ptr.next = .none; | 861 | entry_ptr.next = .none; |
| 861 | entry_ptr.off = last_entry_ptr.off + sec.padToIdeal(last_entry_ptr.len); | 862 | entry_ptr.off = last_entry_ptr.off + sec.padToIdeal(last_entry_ptr.len); |
| 862 | unit.last = entry; | 863 | unit.last = entry; |
| | 864 | try last_entry_ptr.pad(unit, sec, dwarf); |
| 863 | } | 865 | } |
| 864 | try unit.resize(sec, dwarf, 0, @intCast(unit.header_len + entry_ptr.off + sec.padToIdeal(len) + unit.trailer_len)); | 866 | try unit.resize(sec, dwarf, 0, @intCast(unit.header_len + entry_ptr.off + sec.padToIdeal(len) + unit.trailer_len)); |
| 865 | } | 867 | } |