xserver/Xext
Enrico Weigelt, metux IT consult e5d7ce8ea8 (!1709) treewide: NULL-protect ScreenRec->DestroyPixmap() calls
Right now, we're assuming that even when deep nesting involved, the proc
vector is always set to a valid function. One the one hand it requires
extra dummy procs in some cases, OTOH it's making upcoming refactoring
of the code flow unnecessarily complex.

The big plot (of subsequent commits) is splitting out the extension's
(and possibly subsystem's) special logic out of the wrapping chain and
let them be executed independently from the DDX/drivers - when applicable
even only when the pixmap is really destroyed (not just unref'ed).
(At some later point, it might even become be actually a valid situation
that DestroyPixmap vector really being NULL.)

See: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1754
See: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1755

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2024-10-31 19:23:49 +01:00
..
bigreq.c drop obsolete HAVE_DIX_CONFIG_H 2024-10-10 13:38:31 +00:00
dpms.c drop obsolete HAVE_DIX_CONFIG_H 2024-10-10 13:38:31 +00:00
dpmsproc.h dpms: Consolidate a bunch of stuff into Xext/dpms.c 2017-03-27 15:59:47 -04:00
geext.c drop obsolete HAVE_DIX_CONFIG_H 2024-10-10 13:38:31 +00:00
geext.h Move extension initialisation prototypes into extinit.h 2012-07-09 23:06:41 -07:00
geint.h xge: Hide some implementation details 2015-07-08 16:40:58 -04:00
hashtable.c drop obsolete HAVE_DIX_CONFIG_H 2024-10-10 13:38:31 +00:00
hashtable.h Fix spelling/wording issues 2020-07-05 13:07:33 -07:00
meson.build Xace: dont install xace.h and xacestr.h anymore 2024-06-23 21:07:48 +00:00
panoramiX.c drop obsolete HAVE_DIX_CONFIG_H 2024-10-10 13:38:31 +00:00
panoramiX.h Xext: drop _PANORAMIX_SERVER 2024-06-23 19:31:46 +00:00
panoramiXSwap.c drop obsolete HAVE_DIX_CONFIG_H 2024-10-10 13:38:31 +00:00
panoramiXh.h Introduce a consistent coding style 2012-03-21 13:54:42 -07:00
panoramiXprocs.c dix: unexport Ones() 2024-10-26 16:35:57 +00:00
panoramiXsrv.h Replace 'pointer' type with 'void *' 2014-01-12 10:24:11 -08:00
saver.c dix: unexport Ones() 2024-10-26 16:35:57 +00:00
security.c dix: unexport Ones() 2024-10-26 16:35:57 +00:00
securitysrv.h Xext: securitysrv.h: drop hacks for including secur.h 2024-06-23 19:20:12 +00:00
shape.c drop obsolete HAVE_DIX_CONFIG_H 2024-10-10 13:38:31 +00:00
shm.c (!1709) treewide: NULL-protect ScreenRec->DestroyPixmap() calls 2024-10-31 19:23:49 +01:00
shmint.h xext: Fix shmint.h to not use headers outside of sdk_HEADERS 2013-11-14 10:22:15 +09:00
sleepuntil.c drop obsolete HAVE_DIX_CONFIG_H 2024-10-10 13:38:31 +00:00
sleepuntil.h Replace 'pointer' type with 'void *' 2014-01-12 10:24:11 -08:00
sync.c dix: unexport Ones() 2024-10-26 16:35:57 +00:00
syncsdk.h xsync: Add resource inside of SyncCreate, export SyncCreate 2019-04-17 14:01:17 -07:00
syncsrv.h sync: Convert from "CARD64" to int64_t. 2017-09-20 13:19:27 -04:00
vidmode.c drop obsolete HAVE_DIX_CONFIG_H 2024-10-10 13:38:31 +00:00
xace.c drop obsolete HAVE_DIX_CONFIG_H 2024-10-10 13:38:31 +00:00
xace.h xace: typesafe hook function for XACE_KEY_AVAIL 2024-06-23 21:07:48 +00:00
xacestr.h Replace 'pointer' type with 'void *' 2014-01-12 10:24:11 -08:00
xcmisc.c drop obsolete HAVE_DIX_CONFIG_H 2024-10-10 13:38:31 +00:00
xf86bigfont.c drop obsolete HAVE_DIX_CONFIG_H 2024-10-10 13:38:31 +00:00
xf86bigfontsrv.h Move extension initialisation prototypes into extinit.h 2012-07-09 23:06:41 -07:00
xres.c os: split off internal definitions from client.h 2024-10-10 13:45:29 +00:00
xselinux.h include: unpexport SELINUX_* consts from include/global.h 2024-03-25 19:40:04 +00:00
xselinux_ext.c drop obsolete HAVE_DIX_CONFIG_H 2024-10-10 13:38:31 +00:00
xselinux_hooks.c os: split off internal definitions from client.h 2024-10-10 13:45:29 +00:00
xselinux_label.c drop obsolete HAVE_DIX_CONFIG_H 2024-10-10 13:38:31 +00:00
xselinuxint.h include: drop obsolete registry.h 2024-03-03 23:20:06 +00:00
xtest.c drop obsolete HAVE_DIX_CONFIG_H 2024-10-10 13:38:31 +00:00
xvdisp.c drop obsolete HAVE_DIX_CONFIG_H 2024-10-10 13:38:31 +00:00
xvdisp.h Fix swapped Xv dispatch under Xinerama. 2007-12-02 14:15:36 -05:00
xvdix.h xv: unexport XvPortNotifyRec 2024-07-26 23:51:13 +00:00
xvdix_priv.h xvmc: unexport XvMCFindXvImage() 2024-10-10 19:59:48 +00:00
xvmain.c (!1709) treewide: NULL-protect ScreenRec->DestroyPixmap() calls 2024-10-31 19:23:49 +01:00
xvmc.c Xext: xvmc: drop unused XvMCScreenInitProc 2024-10-10 19:25:15 +00:00
xvmcext.h xvmc: unexport XvMCFindXvImage() 2024-10-10 19:59:48 +00:00