The size was computed using a 32 bit image while the cursor was just 16 bit. This caused the usage of some invalid bit mask (the bit mask is used to understand where the cursor is transparent). Signed-off-by: Frediano Ziglio <fziglio@xxxxxxxxxx> --- src/channel-cursor.c | 1 + 1 file changed, 1 insertion(+) This was tested with a Windows XP machine with a working QXL driver and some color pointers without shadow. Before the patch the trasparency of the cursor were wrong. diff --git a/src/channel-cursor.c b/src/channel-cursor.c index 2610660..558c920 100644 --- a/src/channel-cursor.c +++ b/src/channel-cursor.c @@ -430,6 +430,7 @@ static display_cursor *set_cursor(SpiceChannel *channel, SpiceCursor *scursor) } break; case SPICE_CURSOR_TYPE_COLOR16: + size /= 2u; for (i = 0; i < hdr->width * hdr->height; i++) { pix_mask = get_pix_mask(data, size, i); pix = *((guint16*)data + i); -- 2.9.4 _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel