* [Qemu-devel] [PATCH] qxl: make sure we don't have a stale ds_mirror hanging around
@ 2012-11-01 12:24 Gerd Hoffmann
0 siblings, 0 replies; only message in thread
From: Gerd Hoffmann @ 2012-11-01 12:24 UTC (permalink / raw)
To: qemu-devel; +Cc: Gerd Hoffmann
ui/spice-display.c uses ds_mirror to figure which screen areas did
actually change. This is active when the qxl card is in vga mode or a
non-qxl gfx card is used. A display resize invalidates ds_mirror, and
it is handled by simply simply freeing ds_mirror. The next screen
update it will be re-allocated as needed.
With qxl there is another possible code path which can invalidate
ds_mirror: leave vga mode and re-enter vga mode. Make sure we free
ds_mirror here too.
https://bugzilla.redhat.com/show_bug.cgi?id=865767
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
hw/qxl.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/hw/qxl.c b/hw/qxl.c
index dfb221a..f25c89d 100644
--- a/hw/qxl.c
+++ b/hw/qxl.c
@@ -1070,6 +1070,8 @@ static void qxl_enter_vga_mode(PCIQXLDevice *d)
qemu_spice_create_host_primary(&d->ssd);
d->mode = QXL_MODE_VGA;
memset(&d->ssd.dirty, 0, sizeof(d->ssd.dirty));
+ g_free(d->ssd.ds_mirror);
+ d->ssd.ds_mirror = NULL;
vga_dirty_log_start(&d->vga);
}
--
1.7.1
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2012-11-01 12:25 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-11-01 12:24 [Qemu-devel] [PATCH] qxl: make sure we don't have a stale ds_mirror hanging around Gerd Hoffmann
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).