xserver/hw/xwin
Enrico Weigelt, metux IT consult 6a8ee31e1b dix: move props into WindowRec and fix potential NULL deref
The pointer to the window properties is currently inside the WindowOptional
structure, which may or may not exist at any given time. Thus, before accessing
those fields, at least need to check whether it exists, potentially need to
create it first.

Since a pointer is small (in relation to WindowRec) and windows having properties
is a pretty common, we can make our life much simpler here by moving the pointer
directly into WindowRec, so we don't need extra WindowOptionalRec allocation.

This also fixes an analyzer warning on potential NULL dereference issue:

| ../dix/property.c: In function ‘dixChangeWindowProperty’:
|../dix/property.c:343:37: warning: dereference of NULL ‘*pWin.optional’ [CWE-476] [-Wanalyzer-null-dereference]
|  343 |         pProp->next = pWin->optional->userProps;
|      |                       ~~~~~~~~~~~~~~^~~~~~~~~~~

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-06-12 16:34:03 +02:00
..
dri
glx
man XWin.man: fix typos in font change escapes 2025-05-31 15:06:23 -07:00
winclipboard man pages: use .BR to mark up man page references 2025-03-29 13:36:54 -07:00
.gitignore
InitInput.c
InitOutput.c
X.ico
XWin.exe.manifest
XWin.rc
ddraw.h
meson.build
propertystore.h
system.XWinrc
win.h
winSetAppUserModelID.c
winallpriv.c
winauth.c
winauth.h
winblock.c
winclipboardinit.c
winclipboardwrappers.c
wincmap.c
winconfig.c
winconfig.h
wincreatewnd.c
wincursor.c
windialogs.c
windisplay.c
windisplay.h
winengine.c
winerror.c
winglobals.c
winglobals.h
winkeybd.c
winkeybd.h
winkeyhook.c
winkeynames.h
winlayouts.h
winmessages.h
winmisc.c
winmonitors.c
winmonitors.h
winmouse.c
winms.h
winmsg.c
winmsg.h
winmsgwindow.c
winmultiwindowclass.c dix: move props into WindowRec and fix potential NULL deref 2025-06-12 16:34:03 +02:00
winmultiwindowclass.h
winmultiwindowicons.c
winmultiwindowicons.h
winmultiwindowshape.c
winmultiwindowwindow.c include: drop obsolete dixevents.h 2025-06-12 16:17:35 +02:00
winmultiwindowwm.c
winmultiwindowwndproc.c include: drop obsolete dixevents.h 2025-06-12 16:17:35 +02:00
winos.c
winprefs.c
winprefs.h
winprefslex.l
winprefsyacc.y
winprocarg.c
winrandr.c randr: unexport and document RROutputSetSubpixelOrder() 2025-06-12 16:28:53 +02:00
winresource.h
winscrinit.c
winshadddnl.c
winshadgdi.c
wintaskbar.c
wintrayicon.c
winvalargs.c
winwakeup.c
winwindow.c
winwindow.h
winwndproc.c