Merge pull request #17298 from hrydgard/godfather-present-workaround

Don't try to present from little temp framebuffers used by Godfather to draw text
This commit is contained in:
Henrik Rydgård 2023-04-18 10:10:58 +02:00 committed by GitHub
commit 3f4c01a907
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 1 deletions

View File

@ -1267,7 +1267,7 @@ static PSPModule *__KernelLoadELFFromPtr(const u8 *ptr, size_t elfSize, u32 load
// Copy the name to ensure it's null terminated.
char name[32]{};
strncpy(name, head->modname, ARRAY_SIZE(head->modname));
SaveDecryptedEbootToStorageMedia(ptr, elfSize, name);
SaveDecryptedEbootToStorageMedia(ptr, (u32)elfSize, name);
}
}
}

View File

@ -1525,6 +1525,11 @@ void FramebufferManagerCommon::CopyDisplayToOutput(bool reallyDirty) {
}
}
// Reject too-tiny framebuffers to display (Godfather, see issue #16915).
if (vfb && vfb->height < 64) {
vfb = nullptr;
}
if (!vfb) {
if (Memory::IsValidAddress(fbaddr)) {
// The game is displaying something directly from RAM. In GTA, it's decoded video.