* [Qemu-devel] [4569] Invalidate VNC framebuffer on every resize.
@ 2008-05-25 0:14 Andrzej Zaborowski
0 siblings, 0 replies; only message in thread
From: Andrzej Zaborowski @ 2008-05-25 0:14 UTC (permalink / raw)
To: qemu-devel
Revision: 4569
http://svn.sv.gnu.org/viewvc/?view=rev&root=qemu&revision=4569
Author: balrog
Date: 2008-05-25 00:14:34 +0000 (Sun, 25 May 2008)
Log Message:
-----------
Invalidate VNC framebuffer on every resize.
On a resize, vncviewer keeps the image in the upper-left part of the screen
unmodified and fills the right end of the lines with black colour. vnc.c keeps the first n bytes of the framebuffer unmodified instead - meaning that
the client's image doesn't match the image in framebuffer and checking
for dirty rows gives wrong results. We can either invalidate the whole
buffer or implement the same transformation as the client.
Modified Paths:
--------------
trunk/vnc.c
Modified: trunk/vnc.c
===================================================================
--- trunk/vnc.c 2008-05-24 23:15:46 UTC (rev 4568)
+++ trunk/vnc.c 2008-05-25 00:14:34 UTC (rev 4569)
@@ -316,6 +316,9 @@
vs->width = ds->width;
vs->height = ds->height;
}
+
+ memset(vs->dirty_row, 0xFF, sizeof(vs->dirty_row));
+ memset(vs->old_data, 42, vs->ds->linesize * vs->ds->height);
}
/* fastest code */
@@ -1182,8 +1185,6 @@
}
vnc_dpy_resize(vs->ds, vs->ds->width, vs->ds->height);
- memset(vs->dirty_row, 0xFF, sizeof(vs->dirty_row));
- memset(vs->old_data, 42, vs->ds->linesize * vs->ds->height);
vga_hw_invalidate();
vga_hw_update();
@@ -1982,8 +1983,6 @@
vs->ds->dpy_resize = vnc_dpy_resize;
vs->ds->dpy_refresh = NULL;
- memset(vs->dirty_row, 0xFF, sizeof(vs->dirty_row));
-
vnc_dpy_resize(vs->ds, 640, 400);
}
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2008-05-25 0:14 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-05-25 0:14 [Qemu-devel] [4569] Invalidate VNC framebuffer on every resize Andrzej Zaborowski
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).