fix(tools): stabilize overlapping SELF region selection

This commit is contained in:
Jade'sG committed 2026-10-25 19:45:03 +08:00
1 parent d5635e5728
commit 2a45d721f6
2 files changed
+49 -1

No files matched your search

+2 -1
View File
@@ -274,6 +274,8 @@ def unwrap(path, output, verbose=False):
regions.append({"old": header["source"], "size": header["size"],
"vaddr": header["vaddr"], "align": header["align"]})
regions.sort(key=lambda region: region["old"])
def output_region(header):
host = header if header["type"] == PT_LOAD else header["host"]
region = load_regions.get(host["index"]) if host is not None else None
@@ -295,7 +297,6 @@ def unwrap(path, output, verbose=False):
region["align"] = alignment
region["vaddr"] = address
regions.sort(key=lambda region: region["old"])
program_offset = struct.unpack_from("<Q", elf_header, 0x20)[0]
cursor = max(FIRST_REGION, program_offset + len(headers) * 56)
padding = 0