Merge pull request #11582 from Pokechu22/software-crash-on-startup

Software: Fix regressions from "Kill Renderer"
This commit is contained in:
Mai
2023-03-02 15:13:00 -05:00
committed by GitHub
5 changed files with 21 additions and 4 deletions

View File

@ -161,7 +161,7 @@ public:
bool UseGeometryShaderForUI() const;
// Returns info about the main surface (aka backbuffer)
virtual SurfaceInfo GetSurfaceInfo() const { return {}; }
virtual SurfaceInfo GetSurfaceInfo() const = 0;
protected:
AbstractFramebuffer* m_current_framebuffer = nullptr;

View File

@ -521,9 +521,16 @@ void Presenter::Present()
if (!g_gfx->SupportsUtilityDrawing())
{
// Video Software doesn't support Drawing a UI or doing post-processing
// So just Show the XFB
g_gfx->ShowImage(m_xfb_entry->texture.get(), m_xfb_rect);
// Video Software doesn't support drawing a UI or doing post-processing
// So just show the XFB
if (m_xfb_entry)
{
g_gfx->ShowImage(m_xfb_entry->texture.get(), m_xfb_rect);
// Update the window size based on the frame that was just rendered.
// Due to depending on guest state, we need to call this every frame.
SetWindowSize(m_xfb_rect.GetWidth(), m_xfb_rect.GetHeight());
}
return;
}