blob: 476cc154a14d1625ed4d3e1663d81aeb136c30b0 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
device: 0.787
graphic: 0.731
vnc: 0.558
semantic: 0.450
network: 0.417
other: 0.408
performance: 0.376
boot: 0.373
permissions: 0.359
debug: 0.328
socket: 0.324
PID: 0.201
files: 0.148
KVM: 0.067
virtio_gpu_gl_update_cursor_data() ignores the cursor resource's pixel format
Description of problem:
The function virtio_gpu_gl_update_cursor_data() ignores the pixel format of the resource it's reading from. It literally uses memcpy() to copy the pointer data. This works just fins if both the guest OS and the display backend use the same pixel format.
The SDL backend seems to use a different pixel format to the GTK display backend. So, you'll get the correct colours in one, but not the other.
Steps to reproduce:
1. Run a VM using Virtio GPU using the GTK backend. Set the guest OS' mouse pointer to one that's red instead of white, and note the mouse pointer's actual colour
2. Now run the same VM using the SDL display backend. Check the colour of the mouse pointer (that should be red)
NOTE: The choice of guest OS shouldn't matter.
|