Hello,

I'm investigating an issue where applications receive damage events when
they create a new damage object. The code in question is this:

static int
ProcDamageCreate (ClientPtr client)
{
..
    if (pDrawable->type == DRAWABLE_WINDOW)
    {
        pRegion = &((WindowPtr) pDrawable)->borderClip;
        DamageDamageRegion(pDrawable, pRegion);
    }

    return Success;
}

and the relevant commit message for this 7-year old change by Keith at:

http://webcvs.freedesktop.org/xserver/xserver/damageext/damageext.c?r1=1.4&r2=1.5&pathrev=MAIN

is this:

  * damageext/damageext.c: (ProcDamageCreate):
    Add borderClip to damage on creation so that clients
    needn't guess.

So what kind of guessing are we talking about here? What is the downside
of removing this initial damage event? The downside with the current
code is that it can lead to some excess work when no damage has occurred. (I wonder if the behavior can changed, though, if some applications already depend on it.)

The documentation at

  http://cgit.freedesktop.org/xorg/proto/damageproto/plain/damageproto.txt

is somewhat sparse..
_______________________________________________
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to