Move some code blocks inside `SDL_VIDEO_RENDER_SW`, where it belongs (#9259)

There was some software renderer specific code that can be excluded with SDL_LEAN_AND_MEAN. This contributes towards #9206
main
Anthony 2024-03-13 04:15:46 +00:00 committed by GitHub
parent c2e9693de5
commit 0a86f8eb6e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 6 additions and 0 deletions

View File

@ -3782,6 +3782,7 @@ int SDL_RenderGeometry(SDL_Renderer *renderer,
}
}
#if SDL_VIDEO_RENDER_SW
static int remap_one_indice(
int prev,
int k,
@ -4150,6 +4151,7 @@ end:
return retval;
}
#endif /* SDL_VIDEO_RENDER_SW */
int SDL_RenderGeometryRawFloat(SDL_Renderer *renderer,
SDL_Texture *texture,
@ -4247,11 +4249,13 @@ int SDL_RenderGeometryRawFloat(SDL_Renderer *renderer,
}
/* For the software renderer, try to reinterpret triangles as SDL_Rect */
#if SDL_VIDEO_RENDER_SW
if (renderer->info.flags & SDL_RENDERER_SOFTWARE) {
return SDL_SW_RenderGeometryRaw(renderer, texture,
xy, xy_stride, color, color_stride, uv, uv_stride, num_vertices,
indices, num_indices, size_indices);
}
#endif
return QueueCmdGeometry(renderer, texture,
xy, xy_stride, color, color_stride, uv, uv_stride,
@ -4673,12 +4677,14 @@ int SDL_SetRenderVSync(SDL_Renderer *renderer, int vsync)
renderer->wanted_vsync = vsync ? SDL_TRUE : SDL_FALSE;
/* for the software renderer, forward eventually the call to the WindowTexture renderer */
#if SDL_VIDEO_RENDER_SW
if (renderer->info.flags & SDL_RENDERER_SOFTWARE) {
if (SDL_SetWindowTextureVSync(renderer->window, vsync) == 0) {
renderer->simulate_vsync = SDL_FALSE;
return 0;
}
}
#endif
if (!renderer->SetVSync ||
renderer->SetVSync(renderer, vsync) != 0) {