xserver/xkb
Enrico Weigelt, metux IT consult b2198df55a xkb: ProcXkbGetGeometry(): fix memleak
If XkbComputeGetGeometryReplySize() returns an error, the XkbGeometryRec won't
be freed, since we're bailing out too early and not calling XkbSendGeometry().

Having XkbSendGeometry() responsible for freeing that struct is unnecessarily
complicated anyways, so move that to ProcXkbGetGeometry() and do it also when
XkbComputeGetGeometryReplySize() failed.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1622>
2024-07-25 18:04:01 +02:00
..
README.compiled R6.6 is the Xorg base-line 2003-11-14 15:54:54 +00:00
XKBAlloc.c Convert XKB to new *allocarray functions 2015-04-21 16:57:54 -07:00
XKBGAlloc.c xkb: Fix heap overflow caused by optimized away min. 2020-12-04 18:31:06 -05:00
XKBMAlloc.c xkb: drop defining XKBSRV_NEED_FILE_FUNCS 2024-02-19 00:44:15 +00:00
XKBMisc.c xkb: drop defining XKBSRV_NEED_FILE_FUNCS 2024-02-19 00:44:15 +00:00
XKM_file_format.txt Fix spelling/wording issues 2020-07-05 13:07:33 -07:00
ddxBeep.c Drop trailing whitespaces 2014-11-12 10:25:00 +10:00
ddxCtrls.c Drop trailing whitespaces 2014-11-12 10:25:00 +10:00
ddxKillSrv.c Drop trailing whitespaces 2014-11-12 10:25:00 +10:00
ddxLEDs.c Drop trailing whitespaces 2014-11-12 10:25:00 +10:00
ddxLoad.c dix: unexport fields from opaque.h not used by modules/drivers 2024-06-23 21:19:27 +00:00
ddxPrivate.c Introduce a consistent coding style 2012-03-21 13:54:42 -07:00
ddxVT.c Drop trailing whitespaces 2014-11-12 10:25:00 +10:00
maprules.c xkb: drop defining XKBSRV_NEED_FILE_FUNCS 2024-02-19 00:44:15 +00:00
meson.build Add a Meson build system alongside autotools. 2017-04-26 15:25:27 -07:00
xkb-procs.h xkb: rename xkb.h to xkb-procs.h 2022-07-08 14:27:04 +00:00
xkb.c xkb: ProcXkbGetGeometry(): fix memleak 2024-07-25 18:04:01 +02:00
xkbAccessX.c include: move private defs to dixstruct_priv.h 2024-04-30 00:47:38 +00:00
xkbActions.c include: move private defs to dixstruct_priv.h 2024-04-30 00:47:38 +00:00
xkbDflts.h Use ARRAY_SIZE all over the tree 2017-10-30 13:45:20 -04:00
xkbEvents.c include: move private definitions out of exevents.h 2024-04-30 00:47:38 +00:00
xkbInit.c xkb: deadcode cleanup 2024-05-19 16:15:43 +01:00
xkbLEDs.c include: move private defs to dixstruct_priv.h 2024-04-30 00:47:38 +00:00
xkbPrKeyEv.c include: move private defs to dixstruct_priv.h 2024-04-30 00:47:38 +00:00
xkbSwap.c xkb: rename xkb.h to xkb-procs.h 2022-07-08 14:27:04 +00:00
xkbUtils.c include: move private defs to dixstruct_priv.h 2024-04-30 00:47:38 +00:00
xkbfmisc.c xkb: drop ununsed XkbNameMatchesPattern() 2024-04-09 06:56:20 +00:00
xkbgeom.h Drop trailing whitespaces 2014-11-12 10:25:00 +10:00
xkbout.c xkb: unexport functions from xkbtext.c 2024-05-14 03:57:45 +00:00
xkbsrv_priv.h include: move private defs to dixstruct_priv.h 2024-04-30 00:47:38 +00:00
xkbtext.c xkb: unexport functions from xkbtext.c 2024-05-14 03:57:45 +00:00
xkbtext_priv.h xkb: unexport Xkb* defines used by xkbtext.c 2024-05-14 03:57:45 +00:00
xkmread.c xkb: make XkbInternAtom() static 2024-04-28 23:21:52 +00:00

The X server uses this directory to store the compiled version of the
current keymap and/or any scratch keymaps used by clients.  The X server
or some other tool might destroy or replace the files in this directory,
so it is not a safe place to store compiled keymaps for long periods of
time.  The default keymap for any server is usually stored in:
     X<num>-default.xkm
where <num> is the display number of the server in question, which makes
it possible for several servers *on the same host* to share the same 
directory.

Unless the X server is modified, sharing this directory between servers on
different hosts could cause problems.