fixed cave flashing on open outbox for non-black cave background color
[rocksndiamonds.git] / src / libgame / sdl.c
index a19defa37acc5a7f7cc8cc07eeb958db0eafe973..d664eecc01df267ae8a86aff5f04e29cb43abbdc 100644 (file)
@@ -502,7 +502,7 @@ SDL_Surface *SDLCreateNativeSurface(int width, int height, int depth)
   return surface;
 }
 
-Bitmap *SDLGetBitmapFromSurface(SDL_Surface *surface)
+Bitmap *SDLGetBitmapFromSurface_WithMaskedColor(SDL_Surface *surface, int r, int g, int b)
 {
   int width  = surface->w;
   int height = surface->h;
@@ -522,11 +522,16 @@ Bitmap *SDLGetBitmapFromSurface(SDL_Surface *surface)
   if (!SDLHasAlpha(bitmap->surface_masked) &&
       !SDLHasColorKey(bitmap->surface_masked))
     SDL_SetColorKey(bitmap->surface_masked, SET_TRANSPARENT_PIXEL,
-                   SDL_MapRGB(bitmap->surface_masked->format, 0x00, 0x00, 0x00));
+                   SDL_MapRGB(bitmap->surface_masked->format, r, g, b));
 
   return bitmap;
 }
 
+Bitmap *SDLGetBitmapFromSurface(SDL_Surface *surface)
+{
+  return SDLGetBitmapFromSurface_WithMaskedColor(surface, 0x00, 0x00, 0x00);
+}
+
 static SDL_Texture *SDLCreateTextureFromSurface(SDL_Surface *surface)
 {
   if (program.headless)