On Mon, Jun 08, 2009 at 01:27:58PM +0200, Pierre Ossman wrote:
> The comparing update tracker is buggy in that it assumes that every
> update is properly contained within the framebuffer dimensions. This
> assumption does not always hold and as a result a lot of updates get
> lost. It was found using mplayer and kwin3 when going in and out of
> fullscreen.
>
> Patch is to be applied for 1.0.
>
> ---
> Index: common/rfb/ComparingUpdateTracker.cxx
> ===================================================================
> --- common/rfb/ComparingUpdateTracker.cxx (revision 3829)
> +++ common/rfb/ComparingUpdateTracker.cxx (working copy)
> @@ -73,7 +73,11 @@
> void ComparingUpdateTracker::compareRect(const Rect& r, Region* newChanged)
> {
> if (!r.enclosed_by(fb->getRect())) {
> - fprintf(stderr,"ComparingUpdateTracker: rect outside fb
> (%d,%d-%d,%d)\n", r.tl.x, r.tl.y, r.br.x, r.br.y);
> + Rect safe;
> + // Crop the rect and try again
> + safe = r.intersect(fb->getRect());
> + if (!safe.is_empty())
> + compareRect(safe, newChanged);
> return;
> }
+1, patch is correct.
Regards, Adam
--
Adam Tkac, Red Hat, Inc.
------------------------------------------------------------------------------
Crystal Reports - New Free Runtime and 30 Day Trial
Check out the new simplified licensing option that enables unlimited
royalty-free distribution of the report engine for externally facing
server and web deployment.
http://p.sf.net/sfu/businessobjects
_______________________________________________
Tigervnc-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tigervnc-devel