treewide: preemptively revert !1714 where it affects ABI compatibility

this adds dummy pointers in place of removed fields in some structs, only for
SDK headers, to preserve ABI
some of these fix segfaults for nvidia driver, some are preemptive

Signed-off-by: dasha_uwu <dasha@linuxping.win>
This commit is contained in:
dasha_uwu 2025-06-13 04:49:59 +05:00 committed by Enrico Weigelt
parent 1489474583
commit a776156b54
6 changed files with 13 additions and 0 deletions

View File

@ -173,6 +173,9 @@ typedef struct {
int version, revision;
int nAdaptors;
XvAdaptorPtr pAdaptors;
void *_dummy1; // required in place of a removed field for ABI compatibility
void *_dummy2; // required in place of a removed field for ABI compatibility
void *_dummy3; // required in place of a removed field for ABI compatibility
} XvScreenRec, *XvScreenPtr;
extern _X_EXPORT int XvScreenInit(ScreenPtr);

View File

@ -86,6 +86,7 @@ typedef struct _DRIScreenPrivRec {
DrawablePtr fullscreen; /* pointer to fullscreen drawable */
drm_clip_rect_t fullscreen_rect; /* fake rect for fullscreen mode */
DRIWrappedFuncsRec wrap;
void *_dummy1; // required in place of a removed field for ABI compatibility
DrawablePtr DRIDrawables[SAREA_MAX_DRAWABLES];
DRIContextPrivPtr dummyCtxPriv; /* Pointer to dummy context */
Bool createDummyCtx;

View File

@ -799,6 +799,8 @@ typedef struct _xf86CrtcConfig {
CreateScreenResourcesProcPtr CreateScreenResources;
void *_dummy1; // required in place of a removed field for ABI compatibility
/* Cursor information */
xf86CursorInfoPtr cursor_info;
CursorPtr cursor;

View File

@ -61,8 +61,11 @@ typedef struct _damageScrPriv {
DamagePtr pScreenDamage;
CopyWindowProcPtr CopyWindow;
void *_dummy1; // required in place of a removed field for ABI compatibility
CreateGCProcPtr CreateGC;
void *_dummy2; // required in place of a removed field for ABI compatibility
SetWindowPixmapProcPtr SetWindowPixmap;
void *_dummy3; // required in place of a removed field for ABI compatibility
CompositeProcPtr Composite;
GlyphsProcPtr Glyphs;
AddTrapsProcPtr AddTraps;

View File

@ -53,6 +53,7 @@ typedef struct _shadowBuf {
/* screen wrappers */
GetImageProcPtr GetImage;
void *_dummy1; // required in place of a removed field for ABI compatibility
ScreenBlockHandlerProcPtr BlockHandler;
} shadowBufRec;

View File

@ -294,6 +294,9 @@ typedef struct _PictureScreen {
GlyphsProcPtr Glyphs; /* unused */
CompositeRectsProcPtr CompositeRects;
void *_dummy1; // required in place of a removed field for ABI compatibility
void *_dummy2; // required in place of a removed field for ABI compatibility
StoreColorsProcPtr StoreColors;
InitIndexedProcPtr InitIndexed;