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

Reply via email to