From 92f394d769d786f5c26c141fd504326d62b26091 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Rydg=C3=A5rd?= Date: Wed, 21 Oct 2026 10:26:31 +0200 Subject: [PATCH] Reject framebuffers for display by buffer size, not current width/height width/height is volatile and influenced by the framebuffer size detection of the latest draw so chck bufferHeight instead. The old check broke the homebrew OOT port. --- GPU/Common/FramebufferManagerCommon.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/GPU/Common/FramebufferManagerCommon.cpp b/GPU/Common/FramebufferManagerCommon.cpp index add72494c6..7dcb9e3565 100644 --- a/GPU/Common/FramebufferManagerCommon.cpp +++ b/GPU/Common/FramebufferManagerCommon.cpp @@ -1765,8 +1765,10 @@ VirtualFramebuffer *FramebufferManagerCommon::FindDisplayVFB(u32 fbaddr, u32 *of } } - // Reject too-tiny framebuffers to display (Godfather, see issue #16915). - if (vfb && vfb->height < 64) { + // Reject too-tiny framebuffers to display (Godfather, see issue #16915). By the buffer's size: width + // and height only cover the latest draw, which can be small (the OoT PSP port ends its frames with + // a 51x51 one). + if (vfb && vfb->bufferHeight < 64) { vfb = nullptr; } return vfb;