summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'x11-base/xorg-server/files/1.2.0-zero-out-client-devprivates-on-allocation.patch')
-rw-r--r--x11-base/xorg-server/files/1.2.0-zero-out-client-devprivates-on-allocation.patch36
1 files changed, 36 insertions, 0 deletions
diff --git a/x11-base/xorg-server/files/1.2.0-zero-out-client-devprivates-on-allocation.patch b/x11-base/xorg-server/files/1.2.0-zero-out-client-devprivates-on-allocation.patch
new file mode 100644
index 0000000..7c6144b
--- /dev/null
+++ b/x11-base/xorg-server/files/1.2.0-zero-out-client-devprivates-on-allocation.patch
@@ -0,0 +1,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;
+ }