mirror of
https://github.com/hrydgard/ppsspp.git
synced 2025-04-02 11:01:50 -04:00
ElfLoader: Don't scan for functions in zero-length sections
We end up scanning a crazy range from 0 to 0xFFFFFFFFC, which causes problems. Happens in WWE: Smackdown Vs Raw 2009 during initial load.
This commit is contained in:
parent
90ea4243e0
commit
0da82d3250
1 changed files with 4 additions and 0 deletions
|
@ -1412,6 +1412,10 @@ static PSPModule *__KernelLoadELFFromPtr(const u8 *ptr, size_t elfSize, u32 load
|
|||
// Note: scan end is inclusive.
|
||||
u32 end = start + reader.GetSectionSize(id) - 4;
|
||||
u32 len = end + 4 - start;
|
||||
if (len == 0) {
|
||||
// Seen in WWE: Smackdown vs Raw 2009. See #17435.
|
||||
continue;
|
||||
}
|
||||
if (!Memory::IsValidRange(start, len)) {
|
||||
ERROR_LOG(LOADER, "Bad section %08x (len %08x) of section %d", start, len, id);
|
||||
continue;
|
||||
|
|
Loading…
Add table
Reference in a new issue