diff --git a/damageext/damageext.c b/damageext/damageext.c index 894c4a9bb..733491c40 100644 --- a/damageext/damageext.c +++ b/damageext/damageext.c @@ -45,7 +45,7 @@ typedef struct { static RESTYPE XRT_DAMAGE; static int damageUseXinerama = 0; -static int PanoramiXDamageCreate(ClientPtr client); +static int PanoramiXDamageCreate(ClientPtr client, xDamageCreateReq *stuff); #endif @@ -258,14 +258,12 @@ DamageExtCreate(DrawablePtr pDrawable, DamageReportLevel level, } static DamageExtPtr -doDamageCreate(ClientPtr client, int *rc) +doDamageCreate(ClientPtr client, int *rc, xDamageCreateReq *stuff) { DrawablePtr pDrawable; DamageExtPtr pDamageExt; DamageReportLevel level; - REQUEST(xDamageCreateReq); - *rc = dixLookupDrawable(&pDrawable, stuff->drawable, client, 0, DixGetAttrAccess | DixReadAccess); if (*rc != Success) @@ -307,11 +305,11 @@ ProcDamageCreate(ClientPtr client) #ifdef PANORAMIX if (damageUseXinerama) - return PanoramiXDamageCreate(client); + return PanoramiXDamageCreate(client, stuff); #endif LEGAL_NEW_RESOURCE(stuff->damage, client); - doDamageCreate(client, &rc); + doDamageCreate(client, &rc, stuff); return rc; } @@ -627,15 +625,12 @@ PanoramiXDamageExtDestroy(DamagePtr pDamage, void *closure) } static int -PanoramiXDamageCreate(ClientPtr client) +PanoramiXDamageCreate(ClientPtr client, xDamageCreateReq *stuff) { PanoramiXDamageRes *damage; PanoramiXRes *draw; int i, rc; - REQUEST(xDamageCreateReq); - - REQUEST_SIZE_MATCH(xDamageCreateReq); LEGAL_NEW_RESOURCE(stuff->damage, client); rc = dixLookupResourceByClass((void **)&draw, stuff->drawable, XRC_DRAWABLE, client, DixGetAttrAccess | DixReadAccess); @@ -648,7 +643,7 @@ PanoramiXDamageCreate(ClientPtr client) if (!AddResource(stuff->damage, XRT_DAMAGE, damage)) return BadAlloc; - damage->ext = doDamageCreate(client, &rc); + damage->ext = doDamageCreate(client, &rc, stuff); if (rc == Success && draw->type == XRT_WINDOW) { FOR_NSCREENS_FORWARD(i) { DrawablePtr pDrawable;