[rpcsx-os] linker: report error on unsupported self segments

This commit is contained in:
DH 2023-08-08 01:09:43 +03:00
parent 9fcee39dd3
commit 5e0d4676e4

View file

@ -71,6 +71,12 @@ static std::vector<std::byte> unself(const std::byte *image, std::size_t size) {
for (std::size_t i = 0; i < header->segmentCount; ++i) {
auto &segment = segments[i];
if ((segment.flags & 0x7fb) != 0 ||
segment.decryptedSize != segment.encryptedSize) {
std::fprintf(stderr, "Unsupported self segment (%lx)\n", segment.flags);
std::abort();
}
if (~segment.flags & 0x800) {
continue;
}