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 Tigervnc-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/tigervnc-devel