mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-17 20:23:59 +00:00
[Object, MachO] Don't crash on invalid MachO load commands.
Summary: Currently all load commands are parsed in MachOObjectFile constructor. If the next load command cannot be parsed, or if command size is too small, properly report it through the error code and fail to construct the object, instead of crashing the program. Test Plan: regression test suite Reviewers: rafael, filcab Subscribers: llvm-commits git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@239080 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -44,6 +44,8 @@ std::string _object_error_category::message(int EV) const {
|
||||
return "The end of the file was unexpectedly encountered";
|
||||
case object_error::bitcode_section_not_found:
|
||||
return "Bitcode section not found in object file";
|
||||
case object_error::macho_small_load_command:
|
||||
return "Mach-O load command with size < 8 bytes";
|
||||
}
|
||||
llvm_unreachable("An enumerator of object_error does not have a message "
|
||||
"defined.");
|
||||
|
Reference in New Issue
Block a user