blob: 7c6144b549b48435b4c21d6ff9daea78dca2b6e1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
http://gitweb.freedesktop.org/?p=xorg/xserver.git;a=commit;h=d9e079d2a385203fdd18d958cfc19d759cab4ba8
Zero out client devPrivates on allocation.
author Eamon Walsh <ewalsh@tycho.nsa.gov>
Fri, 22 Dec 2006 18:07:09 +0000 (13:07 -0500)
committer Eamon Walsh <ewalsh@moss-uranus.epoch.ncsc.mil>
Fri, 22 Dec 2006 18:07:09 +0000 (13:07 -0500)
commit d9e079d2a385203fdd18d958cfc19d759cab4ba8
tree 20548a2b4ab268c5a32c5883f3d06816c9f5d43e tree
parent e437f357b6850a6c87ca6696870b3abd40e5b8ed commit | commitdiff
Zero out client devPrivates on allocation.
--- xorg-server-1.2.0.orig/dix/dispatch.c 2007-03-18 21:43:21.000000000 +0100
+++ xorg-server-1.2.0/dix/dispatch.c 2007-03-18 22:00:24.000000000 +0100
@@ -3683,20 +3683,22 @@
ppriv = (DevUnion *)(client + 1);
else
{
ppriv = (DevUnion *)xalloc(totalClientSize - sizeof(ClientRec));
if (!ppriv)
return 0;
}
client->devPrivates = ppriv;
sizes = clientPrivateSizes;
ptr = (char *)(ppriv + clientPrivateLen);
+ if (ppriv)
+ bzero(ppriv, totalClientSize - sizeof(ClientRec));
for (i = clientPrivateLen; --i >= 0; ppriv++, sizes++)
{
if ( (size = *sizes) )
{
ppriv->ptr = (pointer)ptr;
ptr += size;
}
else
ppriv->ptr = (pointer)NULL;
}
|