summaryrefslogtreecommitdiff
path: root/dix
diff options
context:
space:
mode:
authorAdam Jackson <ajax@nwnk.net>2006-05-22 15:47:56 +0000
committerAdam Jackson <ajax@nwnk.net>2006-05-22 15:47:56 +0000
commitbc0c56c407117d1545e20d21f7d30eb3472d618b (patch)
treecb7df5ccbd520f2727b2b91ac18e65a59aed9bf5 /dix
parentcc3b882bd141218052cdde0144fc2a707ceee83d (diff)
Bug #6924: Restore the ABI for DrawableRec and ColormapRec to the state
they were in prior to the fix for #6438. Based on a patch from Andy Ritger.
Diffstat (limited to 'dix')
-rw-r--r--dix/colormap.c9
-rw-r--r--dix/pixmap.c8
-rw-r--r--dix/window.c6
3 files changed, 21 insertions, 2 deletions
diff --git a/dix/colormap.c b/dix/colormap.c
index 900949c81..a448010ea 100644
--- a/dix/colormap.c
+++ b/dix/colormap.c
@@ -1,4 +1,4 @@
-/* $XdotOrg: xserver/xorg/dix/colormap.c,v 1.11 2005/09/05 07:40:50 daniels Exp $ */
+/* $XdotOrg: xserver/xorg/dix/colormap.c,v 1.12 2006/02/15 20:44:12 ajax Exp $ */
/* $XFree86: xc/programs/Xserver/dix/colormap.c,v 3.11 2003/11/03 05:10:59 tsi Exp $ */
/***********************************************************
@@ -280,6 +280,13 @@ CreateColormap (Colormap mid, ScreenPtr pScreen, VisualPtr pVisual,
pmap = (ColormapPtr) xalloc(sizebytes);
if (!pmap)
return (BadAlloc);
+#if defined(_XSERVER64)
+ pmap->pad0 = 0;
+ pmap->pad1 = 0;
+#if (X_BYTE_ORDER == X_LITTLE_ENDIAN)
+ pmap->pad2 = 0;
+#endif
+#endif
pmap->red = (EntryPtr)((char *)pmap + sizeof(ColormapRec));
sizebytes = size * sizeof(Entry);
pmap->clientPixelsRed = (Pixel **)((char *)pmap->red + sizebytes);
diff --git a/dix/pixmap.c b/dix/pixmap.c
index 527b0f0b2..1c3d49fc5 100644
--- a/dix/pixmap.c
+++ b/dix/pixmap.c
@@ -141,5 +141,13 @@ AllocatePixmap(ScreenPtr pScreen, int pixDataSize)
#else
pPixmap = (PixmapPtr)xalloc(sizeof(PixmapRec) + pixDataSize);
#endif
+
+#ifdef _XSERVER64
+ if (pPixmap) {
+ pPixmap->drawable.pad0 = 0;
+ pPixmap->drawable.pad1 = 0;
+ }
+#endif
+
return pPixmap;
}
diff --git a/dix/window.c b/dix/window.c
index f00f63714..9fba5f832 100644
--- a/dix/window.c
+++ b/dix/window.c
@@ -1,4 +1,4 @@
-/* $XdotOrg: xserver/xorg/dix/window.c,v 1.16 2006/03/29 17:51:54 deronj Exp $ */
+/* $XdotOrg: xserver/xorg/dix/window.c,v 1.17 2006/03/31 17:39:35 sandmann Exp $ */
/* $Xorg: window.c,v 1.4 2001/02/09 02:04:41 xorgcvs Exp $ */
/*
@@ -384,6 +384,10 @@ AllocateWindow(ScreenPtr pScreen)
else
ppriv->ptr = (pointer)NULL;
}
+#if _XSERVER64
+ pWin->drawable.pad0 = 0;
+ pWin->drawable.pad1 = 0;
+#endif
}
return pWin;
}