On Mon, Aug 09, 2010 at 08:09:53PM +0200, ext Adam Jackson wrote: > If the SIGIO handler interrupts the drivers XVPutImage hook, we can end > up calling RemovePortFromWindow(NULL), which will fault. That's nasty > enough, but calling RegionDestroy is also verboten since that races with > malloc. > > Move it all to the block handler, being careful to block SIGIO > processing during the difficult bit of the work. Note that there's an > unavoidable race here between reading the "do I need to finish" variable > and going back to select(), which means in the worst case we can be one > frame behind in updates until the next time we hit select(). Serves you > right for using panning. > > Signed-off-by: Adam Jackson <[email protected]>
This logic seems to be correct for me: Acked-by: Tiago Vignatti <[email protected]> Tiago _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
