X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Flibgame%2Fsdl.c;h=457f567ad59f461b3b90266785d9ec014bfa969d;hp=7fb650f1b17e9d6070db72855db59cf9c5e34c61;hb=6b6c9eb2;hpb=6eb62af20c6c852beba5c805adae37697b68aaad diff --git a/src/libgame/sdl.c b/src/libgame/sdl.c index 7fb650f1..457f567a 100644 --- a/src/libgame/sdl.c +++ b/src/libgame/sdl.c @@ -353,6 +353,11 @@ SDL_Surface *SDLGetNativeSurface(SDL_Surface *surface) if (new_surface == NULL) Error(ERR_EXIT, "SDL_ConvertSurface() failed: %s", SDL_GetError()); + // workaround for a bug in SDL 2.0.12 (which does not convert the color key) + if (SDLHasColorKey(surface) && !SDLHasColorKey(new_surface)) + SDL_SetColorKey(new_surface, SET_TRANSPARENT_PIXEL, + SDLGetColorKey(surface)); + return new_surface; }