aports/main/llvm20/fix-macho-invalid-test.patch
2025-03-07 12:50:30 +00:00

16 lines
894 B
Diff

Patch-Source: https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/73161#note_444390
Upstream-Issue: https://github.com/llvm/llvm-project/issues/56746
diff --git a/llvm/lib/Object/MachOObjectFile.cpp b/llvm/lib/Object/MachOObjectFile.cpp
index 812b2c0..33f2575 100644
--- a/llvm/lib/Object/MachOObjectFile.cpp
+++ b/llvm/lib/Object/MachOObjectFile.cpp
@@ -192,7 +192,7 @@ static Expected<MachOObjectFile::LoadCommandInfo>
getLoadCommandInfo(const MachOObjectFile &Obj, const char *Ptr,
uint32_t LoadCommandIndex) {
if (auto CmdOrErr = getStructOrErr<MachO::load_command>(Obj, Ptr)) {
- if (CmdOrErr->cmdsize + Ptr > Obj.getData().end())
+ if (CmdOrErr->cmdsize > Obj.getData().end() - Ptr)
return malformedError("load command " + Twine(LoadCommandIndex) +
" extends past end of file");
if (CmdOrErr->cmdsize < 8)