xserver: Branch 'master' - 2 commits

Michel Dänzer michel at daenzer.net
Tue Feb 17 10:42:23 PST 2009


On Tue, 2009-02-17 at 10:25 -0800, Maarten Maathuis wrote:
> exa/exa.c           |   10 ++--------
>  exa/exa_migration.c |   16 +++-------------
>  2 files changed, 5 insertions(+), 21 deletions(-)
> 
> New commits:
> commit 3175646b10c602d17d5dd37bdace7c1c7ee92b3d
> Author: Maarten Maathuis <madman2003 at gmail.com>
> Date:   Tue Feb 17 19:06:35 2009 +0100
> 
>     exa: exaPixmapDirty should use official damage functions.
>     
>     - Otherwise other users will not be notified of damage.

This probably doesn't hurt, though I don't think we use exaPixmapDirty
on anything anybody else even knows about.


> diff --git a/exa/exa_migration.c b/exa/exa_migration.c
> index 9d0eda0..36b1a8c 100644
> --- a/exa/exa_migration.c
> +++ b/exa/exa_migration.c
> @@ -174,23 +174,13 @@ exaCopyDirty(ExaMigrationPtr migrate, RegionPtr pValidDst, RegionPtr pValidSrc,
>  #endif
>  
>  	    /* Try to prevent destination valid region from growing too many
> -	     * rects by filling it up to the extents of the union of the
> -	     * destination valid region and the pending damage region.
> +	     * rects by filling it up to the extents of the pending damage region.
>  	     */
>  	    if (REGION_NUM_RECTS(pValidDst) > 10) {
> -		BoxRec box;
> -		BoxPtr pValidExt, pDamageExt;
> +		BoxPtr pDamageExt = REGION_EXTENTS(pScreen, pending_damage);
>  		RegionRec closure;
>  
> -		pValidExt = REGION_EXTENTS(pScreen, pValidDst);
> -		pDamageExt = REGION_EXTENTS(pScreen, pending_damage);
> -
> -		box.x1 = min(pValidExt->x1, pDamageExt->x1);
> -		box.y1 = min(pValidExt->y1, pDamageExt->y1);
> -		box.x2 = max(pValidExt->x2, pDamageExt->x2);
> -		box.y2 = max(pValidExt->y2, pDamageExt->y2);
> -
> -		REGION_INIT(pScreen, &closure, &box, 0);
> +		REGION_INIT(pScreen, &closure, pDamageExt, 0);
>  		REGION_INTERSECT(pScreen, &CopyReg, &CopyReg, &closure);
>  	    } else
>  		REGION_INTERSECT(pScreen, &CopyReg, &CopyReg, pending_damage);

This basically disables the whole thing again, as the pending damage
region is usually a single rectangle. Why didn't you send this out for
review first?


-- 
Earthling Michel Dänzer           |                http://www.vmware.com
Libre software enthusiast         |          Debian, X and DRI developer


More information about the xorg-devel mailing list