summaryrefslogtreecommitdiff
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;
     }