xserver/Xext
Enrico Weigelt, metux IT consult ef62929f58 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>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1709>
2025-02-06 23:02:06 +00:00
..
bigreq.c Xext: bigreq: drop swapping request length fields 2025-02-06 22:28:49 +00:00
dpms.c Xext: dpms: drop now obsolete swap procs 2025-02-06 22:28:51 +00:00
dpmsproc.h dpms: Consolidate a bunch of stuff into Xext/dpms.c 2017-03-27 15:59:47 -04:00
geext.c Xext: geext: simplify dispatcher 2025-02-06 21:26:32 +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 Xext: panoramiX: drop now obsolete swap procs 2025-02-06 22:28:51 +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 Xext: saver: drop now obsolete swap procs 2025-02-06 22:28:52 +00:00
security.c Xext: security: drop swapping request length fields 2025-02-06 22:28:50 +00:00
securitysrv.h Xext: securitysrv.h: drop hacks for including secur.h 2024-06-23 19:20:12 +00:00
shape.c Xext: shape: drop now obsolete swap procs 2025-02-06 22:28:52 +00:00
shm.c treewide: NULL-protect ScreenRec->DestroyPixmap() calls 2025-02-06 23:02:06 +00: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 Xext: sync: drop now obsolete swap procs 2025-02-06 22:28:52 +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 Xext: vidmode: drop now obsolete swap procs 2025-02-06 22:28:52 +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 Xext: xcmisc: drop now obsolete swap procs 2025-02-06 22:28:52 +00:00
xf86bigfont.c Xext: xf86bigfont: drop swapping request length fields 2025-02-06 22:28:50 +00:00
xf86bigfontsrv.h Move extension initialisation prototypes into extinit.h 2012-07-09 23:06:41 -07:00
xres.c Xext: xres: drop swapping request length fields 2025-02-06 22:28:50 +00:00
xselinux.h include: unpexport SELINUX_* consts from include/global.h 2024-03-25 19:40:04 +00:00
xselinux_ext.c Xext: selinux: drop swapping request length fields 2025-02-06 22:28:50 +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 Xext: xtest: drop now obsolete swap procs 2025-02-06 22:28:52 +00:00
xvdisp.c Xext: xv: drop now obsolete swap procs 2025-02-06 22:28:52 +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 treewide: NULL-protect ScreenRec->DestroyPixmap() calls 2025-02-06 23:02:06 +00: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