Could you please remove the "if (!bIsSoftwareRenderer)" line in
SDL_UpdateRects() in src/screen.c, so that SDL_RenderClear(sdlRenderer)
is always called there:
diff --git a/src/screen.c b/src/screen.c
--- a/src/screen.c
+++ b/src/screen.c
@@ -117,8 +117,7 @@ void SDL_UpdateRects(SDL_Surface *screen, int numrects, SDL_Rect *rects)
{
SDL_UpdateTexture(sdlTexture, NULL, screen->pixels, screen->pitch);
/* Need to clear the renderer context for certain accelerated cards */
- if (!bIsSoftwareRenderer)
- SDL_RenderClear(sdlRenderer);
+ SDL_RenderClear(sdlRenderer);
SDL_RenderCopy(sdlRenderer, sdlTexture, NULL, NULL);
SDL_RenderPresent(sdlRenderer);
}
That would be helpful to see whether the bIsSoftwareRenderer detection
is wrong, or whether there is another problem somewhere else.
No change, so there's probably another problem.