xfree86/xv: Remove clipOrg from XvPortRecPrivate
clipOrg never changes except when clientClip changes, so instead of keeping copies of both originals translate clientClip by clipOrg immediately and just keep the translated clientClip. Signed-off-by: Ville Syrjälä <ville.syrjala@nokia.com> Reviewed-by: Luc Verhaegen <luc.verhaegen@basyskom.de>
This commit is contained in:
		
							parent
							
								
									47d8bd0a99
								
							
						
					
					
						commit
						7294236bdb
					
				| 
						 | 
					@ -661,8 +661,7 @@ xf86XVUpdateCompositeClip(XvPortRecPrivatePtr portPriv)
 | 
				
			||||||
   pCompositeClip = RegionCreate(NullBox, 1);
 | 
					   pCompositeClip = RegionCreate(NullBox, 1);
 | 
				
			||||||
   RegionCopy(pCompositeClip, portPriv->clientClip);
 | 
					   RegionCopy(pCompositeClip, portPriv->clientClip);
 | 
				
			||||||
   RegionTranslate(pCompositeClip,
 | 
					   RegionTranslate(pCompositeClip,
 | 
				
			||||||
			portPriv->pDraw->x + portPriv->clipOrg.x,
 | 
							   portPriv->pDraw->x, portPriv->pDraw->y);
 | 
				
			||||||
			portPriv->pDraw->y + portPriv->clipOrg.y);
 | 
					 | 
				
			||||||
   RegionIntersect(pCompositeClip, pregWin, pCompositeClip);
 | 
					   RegionIntersect(pCompositeClip, pregWin, pCompositeClip);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
   portPriv->pCompositeClip = pCompositeClip;
 | 
					   portPriv->pCompositeClip = pCompositeClip;
 | 
				
			||||||
| 
						 | 
					@ -687,6 +686,8 @@ xf86XVCopyClip(
 | 
				
			||||||
	    portPriv->clientClip = RegionCreate(NullBox, 1);
 | 
						    portPriv->clientClip = RegionCreate(NullBox, 1);
 | 
				
			||||||
	/* Note: this is in window coordinates */
 | 
						/* Note: this is in window coordinates */
 | 
				
			||||||
	RegionCopy(portPriv->clientClip, pGC->clientClip);
 | 
						RegionCopy(portPriv->clientClip, pGC->clientClip);
 | 
				
			||||||
 | 
						RegionTranslate(portPriv->clientClip,
 | 
				
			||||||
 | 
								pGC->clipOrg.x, pGC->clipOrg.y);
 | 
				
			||||||
    } else if(portPriv->clientClip) { /* free the old clientClip */
 | 
					    } else if(portPriv->clientClip) { /* free the old clientClip */
 | 
				
			||||||
	RegionDestroy(portPriv->clientClip);
 | 
						RegionDestroy(portPriv->clientClip);
 | 
				
			||||||
	portPriv->clientClip = NULL;
 | 
						portPriv->clientClip = NULL;
 | 
				
			||||||
| 
						 | 
					@ -697,7 +698,6 @@ xf86XVCopyClip(
 | 
				
			||||||
	RegionDestroy(portPriv->pCompositeClip);
 | 
						RegionDestroy(portPriv->pCompositeClip);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    portPriv->clipOrg = pGC->clipOrg;
 | 
					 | 
				
			||||||
    portPriv->pCompositeClip = pGC->pCompositeClip;
 | 
					    portPriv->pCompositeClip = pGC->pCompositeClip;
 | 
				
			||||||
    portPriv->FreeCompositeClip = FALSE;
 | 
					    portPriv->FreeCompositeClip = FALSE;
 | 
				
			||||||
    portPriv->subWindowMode = pGC->subWindowMode;
 | 
					    portPriv->subWindowMode = pGC->subWindowMode;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -67,7 +67,6 @@ typedef struct {
 | 
				
			||||||
   DrawablePtr pDraw;
 | 
					   DrawablePtr pDraw;
 | 
				
			||||||
   unsigned char type;
 | 
					   unsigned char type;
 | 
				
			||||||
   unsigned int subWindowMode;
 | 
					   unsigned int subWindowMode;
 | 
				
			||||||
   DDXPointRec clipOrg;
 | 
					 | 
				
			||||||
   RegionPtr clientClip;
 | 
					   RegionPtr clientClip;
 | 
				
			||||||
   RegionPtr pCompositeClip;
 | 
					   RegionPtr pCompositeClip;
 | 
				
			||||||
   Bool FreeCompositeClip;
 | 
					   Bool FreeCompositeClip;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue