aboutsummaryrefslogtreecommitdiff
path: root/xorg-server
diff options
context:
space:
mode:
Diffstat (limited to 'xorg-server')
-rw-r--r--xorg-server/damageext/damageext.c1
-rw-r--r--xorg-server/os/connection.c3
-rw-r--r--xorg-server/os/io.c4
3 files changed, 8 insertions, 0 deletions
diff --git a/xorg-server/damageext/damageext.c b/xorg-server/damageext/damageext.c
index fb60e7f72..d4301f10b 100644
--- a/xorg-server/damageext/damageext.c
+++ b/xorg-server/damageext/damageext.c
@@ -217,6 +217,7 @@ ProcDamageCreate (ClientPtr client)
if (!AddResource (stuff->damage, DamageExtType, (pointer) pDamageExt))
return BadAlloc;
+ DamageSetReportAfterOp (pDamageExt->pDamage, TRUE);
DamageRegister (pDamageExt->pDrawable, pDamageExt->pDamage);
if (pDrawable->type == DRAWABLE_WINDOW)
diff --git a/xorg-server/os/connection.c b/xorg-server/os/connection.c
index bec7b1b23..58bc87bf1 100644
--- a/xorg-server/os/connection.c
+++ b/xorg-server/os/connection.c
@@ -1057,6 +1057,9 @@ CloseDownConnection(ClientPtr client)
{
OsCommPtr oc = (OsCommPtr)client->osPrivate;
+ if (FlushCallback)
+ CallCallbacks(&FlushCallback, NULL);
+
#ifdef DEBUG
ErrorF("CloseDownConnection: client index = %d, socket fd = %d\n",
client->index, oc->fd);
diff --git a/xorg-server/os/io.c b/xorg-server/os/io.c
index 8cd25398b..c9019357b 100644
--- a/xorg-server/os/io.c
+++ b/xorg-server/os/io.c
@@ -819,6 +819,10 @@ WriteToClient (ClientPtr who, int count, const void *__buf)
CriticalOutputPending = FALSE;
NewOutputPending = FALSE;
}
+
+ if (FlushCallback)
+ CallCallbacks(&FlushCallback, NULL);
+
return FlushClient(who, oc, buf, count);
}