aboutsummaryrefslogtreecommitdiff
path: root/src/link/Elf.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/link/Elf.zig')
-rw-r--r--src/link/Elf.zig10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/link/Elf.zig b/src/link/Elf.zig
index c669c80221..32e8c79441 100644
--- a/src/link/Elf.zig
+++ b/src/link/Elf.zig
@@ -926,6 +926,11 @@ pub fn growAllocSection(self: *Elf, shdr_index: u16, needed_size: u64) !void {
phdr.p_offset = new_offset;
}
+ shdr.sh_size = needed_size;
+ if (!is_zerofill) {
+ phdr.p_filesz = needed_size;
+ }
+
const mem_capacity = self.allocatedVirtualSize(phdr.p_vaddr);
if (needed_size > mem_capacity) {
// We are exceeding our allocated VM capacity so we need to shift everything in memory
@@ -952,13 +957,8 @@ pub fn growAllocSection(self: *Elf, shdr_index: u16, needed_size: u64) !void {
}
}
- shdr.sh_size = needed_size;
phdr.p_memsz = needed_size;
- if (!is_zerofill) {
- phdr.p_filesz = needed_size;
- }
-
self.markDirty(shdr_index, phdr_index);
}