hrydgard/ppsspp — pull request #5600 by thedax (2014-03-03 16:49:00+00:00)
Title: Perform another PS1 eboot check before checking the PSAR magic.

It seems as if some PS1 eboots out there are malformed and will get past the PSISOIMG0000 check, so check the PARAM.SFO category, too. If the eboot gets past that too, PPSSPP will probably still crash, so we're screwed at that point anyway.

I wasn't sure if the lock_guard stuff was needed, so I kept it from when I adapted the code from the GameInfoCache.

Anyway, PS1 eboots are also supposed to use "ME" as their PARAM.SFO category, so this should make it a bit better when detecting them. If both checks fail, there's no other way to detect and reject them that I can think of.