hw/vmware_vga.c: fix screen resize bug introduced after console revamp

In vmsvga display update function, a pointer to DisplaySurface must be acquired
after a call to vmsvga_check_size since this function might replace current
DisplaySurface with a new one.

Signed-off-by: Igor Mitsyanko <i.mitsyanko@gmail.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
Igor Mitsyanko 2013-03-19 23:44:56 +04:00 committed by Gerd Hoffmann
parent 522fccbe71
commit 17866fc888

View File

@ -995,7 +995,7 @@ static inline void vmsvga_check_size(struct vmsvga_state_s *s)
static void vmsvga_update_display(void *opaque)
{
struct vmsvga_state_s *s = opaque;
DisplaySurface *surface = qemu_console_surface(s->vga.con);
DisplaySurface *surface;
bool dirty = false;
if (!s->enable) {
@ -1004,6 +1004,7 @@ static void vmsvga_update_display(void *opaque)
}
vmsvga_check_size(s);
surface = qemu_console_surface(s->vga.con);
vmsvga_fifo_run(s);
vmsvga_update_rect_flush(s);