diff options
author | Alon Levy <alevy@redhat.com> | 2012-03-21 18:17:18 +0200 |
---|---|---|
committer | Gerd Hoffmann <kraxel@redhat.com> | 2012-03-22 14:29:13 +0100 |
commit | a13ccc991a852cf12f2c05f537c40ce239ae464f (patch) | |
tree | 70f0f5fbd5f2fca659531cbe3ec027ffe359b7b7 /qemu-options-wrapper.h | |
parent | 34d14c6d8c7af0d2457cf5730fe5a65a878c509d (diff) |
ui/spice-display: use uintptr_t when casting qxl physical addresses
The current intptr_t casts are a problem when the address's highest
bit is 1, and it is cast to a intptr_t and then to uint64_t, such
as at:
surface.mem = (intptr_t)ssd->buf;
This causes the sign bit to be extended which causes a wrong address to
be passed on to spice, which then complains when it gets the wrong
slot_id number, since the slot_id is taken from the higher bits.
The assertion happens early - during the first primary surface creation.
This fixes running "-vga qxl -spice" with 32 bit compiled
qemu-system-i386.
Signed-off-by: Alon Levy <alevy@redhat.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Diffstat (limited to 'qemu-options-wrapper.h')
0 files changed, 0 insertions, 0 deletions