summaryrefslogtreecommitdiff
path: root/include/colormapst.h
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 /include/colormapst.h
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 'include/colormapst.h')
-rw-r--r--include/colormapst.h17
1 files changed, 15 insertions, 2 deletions
diff --git a/include/colormapst.h b/include/colormapst.h
index d2422ea85..fdfc8f397 100644
--- a/include/colormapst.h
+++ b/include/colormapst.h
@@ -49,6 +49,8 @@ SOFTWARE.
#ifndef CMAPSTRUCT_H
#define CMAPSTRUCT_H 1
+#include <X11/Xarch.h>
+
#include "colormap.h"
#include "screenint.h"
@@ -89,15 +91,26 @@ typedef struct _CMEntry
Bool fShared;
} Entry;
-/* COLORMAPs can be used for either Direct or Pseudo color. PseudoColor
+/*
+ * COLORMAPs can be used for either Direct or Pseudo color. PseudoColor
* only needs one cell table, we arbitrarily pick red. We keep track
- * of that table with freeRed, numPixelsRed, and clientPixelsRed */
+ * of that table with freeRed, numPixelsRed, and clientPixelsRed
+ *
+ * The padN variables are unfortunate ABI BC. See fdo bug #6924.
+ */
typedef struct _ColormapRec
{
VisualPtr pVisual;
short class; /* PseudoColor or DirectColor */
+#if defined(_XSERVER64)
+ short pad0;
+ XID pad1;
+#endif
XID mid; /* client's name for colormap */
+#if defined(_XSERVER64) && (X_BYTE_ORDER == X_LITTLE_ENDIAN)
+ XID pad2;
+#endif
ScreenPtr pScreen; /* screen map is associated with */
short flags; /* 1 = IsDefault
* 2 = AllAllocated */