diff --git a/src/video/SDL_surface.c b/src/video/SDL_surface.c index f2264ab49dbb1..9a6a7bce9d099 100644 --- a/src/video/SDL_surface.c +++ b/src/video/SDL_surface.c @@ -1354,7 +1354,6 @@ SDL_Surface *SDL_ConvertSurfaceAndColorspace(SDL_Surface *surface, SDL_PixelForm int ret; SDL_bool palette_ck_transform = SDL_FALSE; Uint8 palette_ck_value = 0; - SDL_bool palette_has_alpha = SDL_FALSE; Uint8 *palette_saved_alpha = NULL; int palette_saved_alpha_ncolors = 0; @@ -1449,8 +1448,6 @@ SDL_Surface *SDL_ConvertSurfaceAndColorspace(SDL_Surface *surface, SDL_PixelForm if (!has_alpha_channel) { set_opaque = SDL_TRUE; } - } else { - palette_has_alpha = SDL_TRUE; } /* Set opaque and backup palette alpha values */ @@ -1471,7 +1468,6 @@ SDL_Surface *SDL_ConvertSurfaceAndColorspace(SDL_Surface *surface, SDL_PixelForm if (copy_flags & SDL_COPY_COLORKEY) { if (surface->internal->palette && !palette) { palette_ck_transform = SDL_TRUE; - palette_has_alpha = SDL_TRUE; palette_ck_value = surface->internal->palette->colors[surface->internal->map.info.colorkey].a; surface->internal->palette->colors[surface->internal->map.info.colorkey].a = SDL_ALPHA_TRANSPARENT; } @@ -1592,8 +1588,7 @@ SDL_Surface *SDL_ConvertSurfaceAndColorspace(SDL_Surface *surface, SDL_PixelForm /* Enable alpha blending by default if the new surface has an * alpha channel or alpha modulation */ - if ((SDL_ISPIXELFORMAT_ALPHA(surface->format) && SDL_ISPIXELFORMAT_ALPHA(format)) || - (palette_has_alpha && SDL_ISPIXELFORMAT_ALPHA(format)) || + if (SDL_ISPIXELFORMAT_ALPHA(format) || (copy_flags & SDL_COPY_MODULATE_ALPHA)) { SDL_SetSurfaceBlendMode(convert, SDL_BLENDMODE_BLEND); }