Skip to content
This repository has been archived by the owner on Feb 11, 2021. It is now read-only.

Commit

Permalink
Added an environment variable to select which driver the software ren…
Browse files Browse the repository at this point in the history
…derer will use.
  • Loading branch information
slouken committed Jul 23, 2006
1 parent 3f3ee25 commit b649894
Showing 1 changed file with 12 additions and 5 deletions.
17 changes: 12 additions & 5 deletions src/video/SDL_renderer_sw.c
Expand Up @@ -159,6 +159,7 @@ SW_CreateRenderer(SDL_Window * window, Uint32 flags)
int bpp;
Uint32 Rmask, Gmask, Bmask, Amask;
Uint32 renderer_flags;
const char *desired_driver;

if (!SDL_PixelFormatEnumToMasks
(displayMode->format, &bpp, &Rmask, &Gmask, &Bmask, &Amask)) {
Expand Down Expand Up @@ -216,13 +217,19 @@ SW_CreateRenderer(SDL_Window * window, Uint32 flags)
if (flags & SDL_Renderer_PresentVSync) {
renderer_flags |= SDL_Renderer_PresentVSync;
}
desired_driver = SDL_getenv("SDL_VIDEO_RENDERER_SWDRIVER");
for (i = 0; i < display->num_render_drivers; ++i) {
SDL_RenderDriver *driver = &display->render_drivers[i];
if (driver->info.name != SW_RenderDriver.info.name) {
data->renderer = driver->CreateRenderer(window, renderer_flags);
if (data->renderer) {
break;
}
if (driver->info.name == SW_RenderDriver.info.name) {
continue;
}
if (desired_driver
&& SDL_strcasecmp(desired_driver, driver->info.name) != 0) {
continue;
}
data->renderer = driver->CreateRenderer(window, renderer_flags);
if (data->renderer) {
break;
}
}
if (i == display->num_render_drivers) {
Expand Down

0 comments on commit b649894

Please sign in to comment.