Fixed bug 3159 - SDL_blit_slow with BLENDING does not work

Fritzor

Source Suface is ABGR and Destination Surface is ABGR. We use software blending. In the Switch-Case statement for SDL_COPY_BLEND (Line 126) the alpha-channel is not calculated like in every SDL_blit_auto - function. So if the destination Surface has alpha - channel of zero the resulting surface has zero as well.
Add:  “dstA = srcA + ((255 - srcA) * dstA) / 255;” to code and everything is okay.
1 file changed