diff --git a/Core/HLE/sceKernelModule.cpp b/Core/HLE/sceKernelModule.cpp index e52176a9b106..37773c66cf11 100644 --- a/Core/HLE/sceKernelModule.cpp +++ b/Core/HLE/sceKernelModule.cpp @@ -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;