]> git.proxmox.com Git - qemu.git/commitdiff
sdl.c: support 32 bpp cursors
authorReimar Döffinger <Reimar.Doeffinger@gmx.de>
Sun, 23 Aug 2009 16:03:34 +0000 (18:03 +0200)
committerAnthony Liguori <aliguori@us.ibm.com>
Fri, 28 Aug 2009 02:23:38 +0000 (21:23 -0500)
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>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
sdl.c

diff --git a/sdl.c b/sdl.c
index a8f5edf989ec18cf6bc1208d7b9820ab4a9a757e..9db20b80742ae0869786e3aabf854e7619a3330f 100644 (file)
--- a/sdl.c
+++ b/sdl.c
@@ -771,6 +771,9 @@ static void sdl_mouse_define(int width, int height, int bpp,
         line = image;
         for (x = 0; x < width; x ++, dst ++) {
             switch (bpp) {
+            case 32:
+                src = *(line ++); src |= *(line ++); src |= *(line ++); line++;
+                break;
             case 24:
                 src = *(line ++); src |= *(line ++); src |= *(line ++);
                 break;