XF86VideoAdaptor uses an unsigned int for its type, and videoproto defines values greater than the size of a char for the bit mask used in the type field:
#define XvPixmapMask 0x00010000 #define XvWindowMask 0x00020000 But the type used in XvAdaptor for the DIX is defined as an unsigned char, so the values set in videoproto won't fit in the XvAdaptor type field. Beside, XFree86 Xv implementation copies the value from XF86VideoAdaptor (defined an unsigned int) to the XvAdaptor type (defined as an unsigned char), so the type for XvAdaptor type ought to be large enough. Signed-off-by: Olivier Fourdan <[email protected]> --- Note: This will break ABI with DDX, so we'd need to bump the ABI version as well, but given we're in the middle of development phase, is it necessary? Xext/xvdix.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Xext/xvdix.h b/Xext/xvdix.h index 621a1e3..59aaf3d 100644 --- a/Xext/xvdix.h +++ b/Xext/xvdix.h @@ -144,7 +144,7 @@ typedef struct { typedef struct { unsigned long base_id; - unsigned char type; + unsigned int type; char *name; int nEncodings; XvEncodingPtr pEncodings; -- 2.5.0 _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: https://lists.x.org/mailman/listinfo/xorg-devel
