Commit 0d8cc7bb authored by Michel Dänzer's avatar Michel Dänzer Committed by Michel Dänzer

miext/sync: Make struct _SyncObject::initialized fully ABI compatible

With a 32-bit build, putting the initialized field at the end of the
struct bumped the struct size from 20 bytes to 24, changing the layout
of other structs embedding struct _SyncObject. While this would be
acceptable on master, it caused crashes with 1.20.

Making the initialized field a char and putting it in the hole before
the beingDestroyed field restores the 32-bit ABI as well.

Fixes xorg/xserver#892Reviewed-by: Aaron Plattner's avatarAaron Plattner <aplattner@nvidia.com>
Reviewed-by: Alex Goins's avatarAlex Goins <agoins@nvidia.com>
parent 6036e845
......@@ -43,8 +43,8 @@ struct _SyncObject {
struct _SyncTriggerList *pTriglist; /* list of triggers */
XID id; /* resource ID */
unsigned char type; /* SYNC_* */
unsigned char initialized; /* FALSE if created but not initialized */
Bool beingDestroyed; /* in process of going away */
Bool initialized; /* FALSE if created but not initialized */
};
typedef struct _SyncCounter {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment