]> xenbits.xen.org Git - xenclient/ioemu.git/commit
fix vnc screen corruption bugs and viewer exits
authorIan Jackson <ian.jackson@eu.citrix.com>
Tue, 4 Aug 2009 14:35:46 +0000 (15:35 +0100)
committerIan Jackson <Ian.Jackson@eu.citrix.com>
Tue, 4 Aug 2009 14:35:57 +0000 (15:35 +0100)
commit55fab1884cf0eae44f06ce97d15c20ca29b8fba2
tree349bc90b4af9efe034694bc105ec3e257cbd6a93
parentb9935ce33bcc20ae722a8945a6fbc0f23d84f9e5
fix vnc screen corruption bugs and viewer exits

I have been having problems with display corruption using raw
encoding.

I have also been having issues with the vncviewer client exiting with
"rect too big".

These problems appear when there are rapid changes to the framebuffer
contents. [I've been using "find /" in my tests to generate a lot of text
output.]

The root cause of both problems appears to be the changing of
the underlying framebuffer data during the creation of the update.
[Hextile makes multiple passes over the data and gets badly
confused if the data changes..]

The attached patch pulls the pixel data from the "stable" old_data
buffer rather than directly from the (changing) display surface.

Submitted-by: Andrew Thomas <andrew.thomas@oracle.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
(cherry picked from commit 99a5a9155284ab47eda2be738be0115aa97ce0ff)
vnc.c
vnchextile.h