sdl.c: support 32 bpp cursors

Hello,
currently when a 32 bpp cursor gets defined the result is all-black in
the areas that are not transparent (you'll get a 32 bpp cursor if you
use my previous patch to allow vmware_vga to use a 32 bpp framebuffer).
This is because the switch in sdl.c lacks a 32 bpp case.
The thing I am unsure about though is which byte is the unused one and
should be skipped, the first or the last - for the black-and-white
cursors I tested it doesn't make a difference...

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Signed-off-by: Andrzej Zaborowski <balrogg@gmail.com>
This commit is contained in:
Reimar Döffinger 2009-08-23 18:03:34 +02:00 committed by Andrzej Zaborowski
parent c00a9de060
commit 699960b272

3
sdl.c
View File

@ -771,6 +771,9 @@ static void sdl_mouse_define(int width, int height, int bpp,
line = image; line = image;
for (x = 0; x < width; x ++, dst ++) { for (x = 0; x < width; x ++, dst ++) {
switch (bpp) { switch (bpp) {
case 32:
src = *(line ++); src |= *(line ++); src |= *(line ++); line++;
break;
case 24: case 24:
src = *(line ++); src |= *(line ++); src |= *(line ++); src = *(line ++); src |= *(line ++); src |= *(line ++);
break; break;