Git log: commit 57063b20915fa392cf0ce2d28a7878e958758664
Author: Julien Cristau <jcristau@debian.org>
Date: Tue Nov 5 21:09:45 2024 +0100
Fix dh_makeshlibs calls to generate correct libx11-6.shlibs (closes: #1086735)
commit 37c431db3ac5bccfb792c0aa31f42d401a96a249
Author: Julien Cristau <jcristau@debian.org>
Date: Fri Nov 1 14:47:48 2024 +0100
Upload to unstable
commit 8f7cb6c40f4b06f4dd2a8193a9ce421243256551
Author: Julien Cristau <jcristau@debian.org>
Date: Fri Nov 1 14:46:44 2024 +0100
Adjust dh_makeshlibs call for libx11-xcb1 to not generate versioned dependencies.
commit 8fcb825f7f6c6cefb905b58c388df8a1bc41882c
Author: Julien Cristau <jcristau@debian.org>
Date: Fri Nov 1 14:27:15 2024 +0100
001_ximcp-hide-internal-functions.diff: add, avoid exporting new symbols.
commit 01efab0eb885952b0a462ef016a22414986bd112
Author: Julien Cristau <jcristau@debian.org>
Date: Fri Nov 1 11:52:40 2024 +0100
Bump changelog
commit 32f7dcf5653288cb4c07d1145724e35cdd3299a2
Merge: e8ef19f ed9fb55
Author: Julien Cristau <jcristau@debian.org>
Date: Fri Nov 1 11:47:49 2024 +0100
Merge tag 'libX11-1.8.10' into debian-unstable
libX11-1.8.10
commit ed9fb5535efe1e5278654b6b3994a34337b4bf1a
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sun Jul 28 10:37:55 2024 -0700
libX11 1.8.10
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 92014b39634e0b0aa52d4bff955a7aac3ed0a915
Author: Kelly Roadkill <roadkell@pm.me>
Date: Tue Jul 23 08:12:01 2024 +0500
Revert "nls: add compose seq's for symbols absent from Cyrillic layouts to ru_RU"
Testing by multilingual typists revealed that the
proposed sequences are too complex for everyday
use. It seems that the inherent problems with
JCUKEN can only be fixed with better kbd layouts.
This reverts commit 174df0b8b6ada7e1c741373c7d686e00f42d8bd5.
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/261>
commit be137dffa6f0b7640ce80b4266539009544bb045
Author: Kelly Roadkill <roadkell@pm.me>
Date: Fri Jul 19 16:47:40 2024 +0500
nls: add compose sequences for hryvnia currency
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/259>
commit 39d57cbeda627115f7e8bd305b6cbd9df1daa007
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Jul 13 10:14:02 2024 -0700
xlibi18n/lcFile.c: avoid use of possibly-NULL pointer with strcpy
Fixes gcc warnings:
lcFile.c: In function ‘_XlcLocaleLibDirName’:
lcFile.c:708:5: warning: use of possibly-NULL ‘last_dir_name’ where
non-null expected [CWE-690] [-Wanalyzer-possible-null-argument]
708 | strcpy (last_dir_name, dir_name);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/258>
commit 8abcaba1a7ee363a35ad8d869715095096995c76
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Jul 6 09:37:50 2024 -0700
Revert "unifdef __vax__"
This reverts commit 4ce3962b701c502acc96b6eaf104a5ffc317c5d7.
Requested by NetBSD which still has a supported VAX port.
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/257>
commit 751fbc59c30604980fdd19cb4b333d3cf2eccb24
Author: Olivier Fourdan <ofourdan@redhat.com>
Date: Fri Jun 21 14:37:24 2024 +0200
Fix deadlock in XRebindKeysym()
Xlib is now built with threading support enabled from the constructor
by default.
XRebindKeysym() acquires the display lock, then calls:
| XRebindKeysym()
| LockDisplay()
| ComputeMaskFromKeytrans()
| -> XkbKeysymToModifiers()
| -> _XkbLoadDpy()
| -> XkbGetMap()
| -> XkbGetUpdatedMap()
| LockDisplay()
And the dead lock:
| Xlib ERROR: XKBGetMap.c line 575 thread 1fc6e580: locking display already
| locked at KeyBind.c line 937
To avoid the issue, call ComputeMaskFromKeytrans() from outside the display
lock.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Closes: https://gitlab.freedesktop.org/xorg/lib/libx11/-/issues/216
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/256>
commit bc8c908ae8007d0bfe9b58c7752dd00fd282d999
Author: Kelly Roadkill <roadkell@pm.me>
Date: Tue Jun 18 14:49:50 2024 +0500
nls: delete compose sequence with anomalous post-fixed cedilla
The only sequence with post-fixed cedilla in the
whole en_US.UTF-8 was introduced in cf040016 with
the merge of GTK+ compose sequences 12 years ago.
It goes against the established patterns.
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/255>
commit 1472048b7a02d1b7fc25cfeda761db23fba21eac
Author: Olivier Fourdan <ofourdan@redhat.com>
Date: Fri Jun 7 09:05:55 2024 +0200
Make colormap private interfaces thread safe.
Protect access to the dpy structure by a display lock, so that these can
be called outside of a global display lock.
That allows the XCMS colormap functions to be thread safe without having
the whole functions within a display lock, to avoid deadlocks.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
See-also: https://gitlab.freedesktop.org/xorg/lib/libx11/-/issues/215
See-also: https://gitlab.freedesktop.org/xorg/lib/libx11/-/issues/94
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/254>
commit 739fce4c12c7aa39112353d80c8a3bf25bdd5274
Author: Olivier Fourdan <ofourdan@redhat.com>
Date: Fri Jun 7 09:07:39 2024 +0200
Revert "Protect colormap add/removal with display lock"
That commit 99a2cf1aa was moving the calls to the _Xcms*CmapRec*()
family of functions within a display lock to make the XCMS colormap
functions thread safe.
Unfortunately, that causes a deadlock in XCopyColormapAndFree(), because
_XcmsCopyCmapRecAndFree() calls CmapRecForColormap() which calls
XGetVisualInfo() which also tries to acquire the display lock.
So, instead of moving the entire functions within the display lock,
let's try to make the functions themselves thread safe in the following
commit, and revert this change which causes a deadlock.
This reverts commit 99a2cf1aa0b58391078d5d3edf0a7dab18c7745d.
Fixes: https://gitlab.freedesktop.org/xorg/lib/libx11/-/issues/215
See-also: https://gitlab.freedesktop.org/xorg/lib/libx11/-/issues/94
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/254>
commit 5dfedaf4aa1a032ea6cb4e871abd2e065f798129
Author: Olivier Fourdan <ofourdan@redhat.com>
Date: Thu Jun 6 16:25:26 2024 +0200
Revert "Fix XTS regression in XCopyColormapAndFree"
This change was to fix the next change that we are to revert as well.
This reverts commit 68c72a7341b114277ab232f2499ee3bd035af8a0.
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/254>
commit c099d0105f7a4f969cf922f333cb54c177aceacb
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat May 18 11:41:36 2024 -0700
Avoid buffer overflow in _XimLookupMBText & _XimLookupUTF8Text
Reported-by: u32i <u32i@proton.me>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/251>
commit 0af3328dc330cbd8e097e2971b336b44466b1ab0
Author: jmcwilliams403 <jmcwilliams403@gmail.com>
Date: Sun Jul 16 11:31:22 2023 -0400
NLS: Add 6 Multi_key sequences for Ezh
Ezh is a Latin-Script letter belonging to several Uralic, Caucasian,
and West-African languages. It is present on some Finnish keyboards,
but users of many other layouts cannot presently type it. This commit
adds Multi_key sequences for both Capital and lowercase Ezh, as well
as Multi_key + dead_caron sequences for Ezh with a caron, which is
used in Laz and Skolt Sámi.
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/221>
commit 174df0b8b6ada7e1c741373c7d686e00f42d8bd5
Author: Kelly Roadkill <roadkell@pm.me>
Date: Sun Dec 3 00:53:55 2023 +0500
nls: add compose seq's for symbols absent from Cyrillic layouts to ru_RU
JCUKEN (ЙЦУКЕН) - the default and de-facto standard layout for most Cyrillic scripts - lacks a number of ASCII symbols from QWERTY counterpart, forcing users to switch back-and-forth between layouts to type them.
This adds sequences for them to the ru_RU compose map in an intuitive and consistent manner.
Fixes #200 for ru_RU (but other Cyrillic layouts might benefit too)
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/238>
commit 763f3f938c24993e9ceb1d6960d939b022fa8dfe
Author: Mohamed Akram <mohd.akram@outlook.com>
Date: Fri May 24 18:18:43 2024 +0400
nls: add Arabic hamza compose sequences
These sequences are intended for use in the ara(mac-phonetic) and
my(phonetic) layouts. They are based on the following layouts listed in
the CLDR:
- https://github.com/unicode-org/cldr/blob/release-43/keyboards/osx/ar-t-k0-osx-qwerty.xml
- https://github.com/unicode-org/cldr/blob/release-43/keyboards/osx/ms-t-k0-osx.xml
The sequences are listed in the `<transforms>` section, and are
reproduced below:
```
<transforms type="simple">
<transform from="ء\u{64E}" to="آ"/> <!-- ءَ → آ -->
<transform from="ء\u{650}" to="إ"/> <!-- ءِ → إ -->
<transform from="ء " to="ء"/>
<transform from="ء\u{A0}" to="ء"/>
<transform from="ء!" to="إ"/>
<transform from="ء١" to="إ"/>
<transform from="ءا" to="أ"/>
<transform from="ءس" to="ئ"/>
<transform from="ءو" to="ؤ"/>
<transform from="ءي" to="ئ"/>
<transform from="ءى" to="ئ"/>
</transforms>
```
We limit ourselves to the sequences that strictly combine a character
and a hamza, and generate that character with a hamza on it, following
the behavior in sequences of other dead keys. Additional sequences,
potentially for other layouts as well, could be added later on as
necessary.
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/218>
commit 97fb5bda3d0777380cd4b964f48771a82ef3f2a7
Author: José Expósito <jexposit@redhat.com>
Date: Tue Apr 30 18:21:08 2024 +0200
Fix buffer overrun in parse_omit_name
When `num_fields == 12`, if the last character of the pattern is '-',
the `buf` array is overrun.
This error has been found by a static analysis tool. This is the report:
Error: OVERRUN (CWE-119):
libX11-1.8.7/modules/om/generic/omGeneric.c:691: cond_at_most:
Checking "length > 255" implies that "length" may be up to 255 on
the false branch.
libX11-1.8.7/modules/om/generic/omGeneric.c:695: alias:
Assigning: "last" = "buf + length - 1". "last" may now point to as
high as byte 254 of "buf" (which consists of 256 bytes).
libX11-1.8.7/modules/om/generic/omGeneric.c:718: ptr_incr:
Incrementing "last". "last" may now point to as high as byte 255
of "buf" (which consists of 256 bytes).
libX11-1.8.7/modules/om/generic/omGeneric.c:720: ptr_incr:
Incrementing "last". "last" may now point to as high as byte 256
of "buf" (which consists of 256 bytes).
libX11-1.8.7/modules/om/generic/omGeneric.c:720: overrun-local:
Overrunning array of 256 bytes at byte offset 256 by
dereferencing pointer "++last".
# 718| *++last = '*';
# 719|
# 720|-> *++last = '-';
# 721| break;
# 722| case 13:
Signed-off-by: José Expósito <jexposit@redhat.com>
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/250>
commit f67a87dad40141f50f4da35b28a92a974bfdf7e1
Author: José Expósito <jexposit@redhat.com>
Date: Tue Apr 30 18:04:35 2024 +0200
Fix memory leak in _XimProtoSetIMValues
This error has been found by a static analysis tool. This is the report:
Error: RESOURCE_LEAK (CWE-772):
libX11-1.8.7/modules/im/ximcp/imDefIm.c:1316: alloc_fn:
Storage is returned from allocation function "calloc".
libX11-1.8.7/modules/im/ximcp/imDefIm.c:1316: var_assign:
Assigning: "tmp" = storage returned from
"calloc((size_t)((buf_size + data_len == 0) ? 1 : (buf_size + data_len)), 1UL)".
libX11-1.8.7/modules/im/ximcp/imDefIm.c:1319: noescape:
Resource "tmp" is not freed or pointed-to in "memcpy".
libX11-1.8.7/modules/im/ximcp/imDefIm.c:1320: var_assign:
Assigning: "buf" = "tmp".
libX11-1.8.7/modules/im/ximcp/imDefIm.c:1302: var_assign:
Assigning: "data" = "buf".
libX11-1.8.7/modules/im/ximcp/imDefIm.c:1303: noescape:
Resource "data" is not freed or pointed-to in
"_XimEncodeIMATTRIBUTE".
libX11-1.8.7/modules/im/ximcp/imDefIm.c:1333: leaked_storage:
Variable "data" going out of scope leaks the storage it points to.
libX11-1.8.7/modules/im/ximcp/imDefIm.c:1333: leaked_storage:
Variable "buf" going out of scope leaks the storage it points to.
libX11-1.8.7/modules/im/ximcp/imDefIm.c:1333: leaked_storage:
Variable "tmp" going out of scope leaks the storage it points to.
# 1331|
# 1332| if (!total)
# 1333|-> return (char *)NULL;
# 1334|
# 1335| buf_s = (CARD16 *)&buf[XIM_HEADER_SIZE];
Signed-off-by: José Expósito <jexposit@redhat.com>
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/250>
commit af1312d2873d2ce49b18708a5029895aed477392
Author: José Expósito <jexposit@redhat.com>
Date: Tue Apr 30 17:37:39 2024 +0200
XKBMAlloc: Check that needed is >= 0 in XkbResizeKeyActions
Passing a negative value in `needed` to the `XkbResizeKeyActions()`
function can create a `newActs` array of an unespected size.
Check the value and return if it is invalid.
This error has been found by a static analysis tool. This is the report:
Error: OVERRUN (CWE-119):
libX11-1.8.7/src/xkb/XKBMAlloc.c:811: cond_const:
Checking "xkb->server->size_acts == 0" implies that
"xkb->server->size_acts" is 0 on the true branch.
libX11-1.8.7/src/xkb/XKBMAlloc.c:811: buffer_alloc:
"calloc" allocates 8 bytes dictated by parameters
"(size_t)((xkb->server->size_acts == 0) ? 1 : xkb->server->size_acts)"
and "8UL".
libX11-1.8.7/src/xkb/XKBMAlloc.c:811: var_assign:
Assigning: "newActs" = "calloc((size_t)((xkb->server->size_acts == 0) ? 1 : xkb->server->size_acts), 8UL)".
libX11-1.8.7/src/xkb/XKBMAlloc.c:815: assignment:
Assigning: "nActs" = "1".
libX11-1.8.7/src/xkb/XKBMAlloc.c:829: cond_at_least:
Checking "nCopy > 0" implies that "nCopy" is at least 1 on the
true branch.
libX11-1.8.7/src/xkb/XKBMAlloc.c:830: overrun-buffer-arg:
Overrunning buffer pointed to by "&newActs[nActs]" of 8 bytes by
passing it to a function which accesses it at byte offset 15
using argument "nCopy * 8UL" (which evaluates to 8).
# 828|
# 829| if (nCopy > 0)
# 830|-> memcpy(&newActs[nActs], XkbKeyActionsPtr(xkb, i),
# 831| nCopy * sizeof(XkbAction));
# 832| if (nCopy < nKeyActs)
Signed-off-by: José Expósito <jexposit@redhat.com>
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/250>
commit 836a8f2cf5e930c8a56b512273fdf9890282ba04
Author: José Expósito <jexposit@redhat.com>
Date: Tue Apr 30 16:49:26 2024 +0200
Fix use of uninitialized variable in _XimEncodeICATTRIBUTE
In the `res->resource_size == XimType_NEST` code path, if
`res->xrm_name != pre_quark` and `res->xrm_name != sts_quark`, `len` can
be used uninitialized.
This error has been found by a static analysis tool. This is the report:
Error: UNINIT (CWE-457):
libX11-1.8.7/modules/im/ximcp/imRmAttr.c:1106: var_decl:
Declaring variable "len" without initializer.
libX11-1.8.7/modules/im/ximcp/imRmAttr.c:1179: uninit_use:
Using uninitialized value "len".
# 1177| }
# 1178|
# 1179|-> if (len == 0) {
# 1180| continue;
# 1181| } else if (len < 0) {
Signed-off-by: José Expósito <jexposit@redhat.com>
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/250>
commit eaad761e24722b1743d3edee3383294bfb4947d6
Author: José Expósito <jexposit@redhat.com>
Date: Tue Apr 30 16:41:40 2024 +0200
Fix use of uninitialized variable in _XimExtension
`_XimRead()` is being called with `reply` as target buffer instead of
using `preply`, accessing uninitialized memory a few lines later.
This error has been found by a static analysis tool. This is the report:
Error: UNINIT (CWE-457):
libX11-1.8.7/modules/im/ximcp/imExten.c:468: alloc_fn:
Calling "malloc" which returns uninitialized memory.
libX11-1.8.7/modules/im/ximcp/imExten.c:468: assign:
Assigning: "preply" = "malloc((size_t)((buf_size == 0) ? 1 : buf_size))",
which points to uninitialized data.
libX11-1.8.7/modules/im/ximcp/imExten.c:479: uninit_use:
Using uninitialized value "*((CARD8 *)preply)".
# 477| return False;
# 478| buf_s = (CARD16 *)((char *)preply + XIM_HEADER_SIZE);
# 479|-> if (*((CARD8 *)preply) == XIM_ERROR) {
# 480| _XimProcError(im, 0, (XPointer)&buf_s[3]);
# 481| if(reply != preply)
Signed-off-by: José Expósito <jexposit@redhat.com>
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/250>
commit 4f5541193dd5a004ed5ea44c12fc25e227113c9b
Author: José Expósito <jexposit@redhat.com>
Date: Tue Apr 30 16:37:21 2024 +0200
Fix use of uninitialized variable in _XimTriggerNotify
`_XimRead()` is being called with `reply` as target buffer instead of
using `preply`, accessing uninitialized memory a few lines later.
This error has been found by a static analysis tool. This is the report:
Error: UNINIT (CWE-457):
libX11-1.8.7/modules/im/ximcp/imDefLkup.c:561: alloc_fn:
Calling "malloc" which returns uninitialized memory.
libX11-1.8.7/modules/im/ximcp/imDefLkup.c:561: assign:
Assigning: "preply" = "malloc((size_t)((len == 0) ? 1 : len))",
which points to uninitialized data.
libX11-1.8.7/modules/im/ximcp/imDefLkup.c:573: uninit_use:
Using uninitialized value "*((CARD8 *)preply)".
# 571| }
# 572| buf_s = (CARD16 *)((char *)preply + XIM_HEADER_SIZE);
# 573|-> if (*((CARD8 *)preply) == XIM_ERROR) {
# 574| _XimProcError(im, 0, (XPointer)&buf_s[3]);
# 575| if(reply != preply)
Signed-off-by: José Expósito <jexposit@redhat.com>
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/250>
commit 90b8fc65da1e773b0091a50be46b23609591e8b7
Author: Takao Fujiwara <tfujiwar@redhat.com>
Date: Fri Apr 26 01:29:39 2024 +0900
imDefIm: Add LIBX11_ENABLE_FABRICATED_ORDER env
If an XIM application does not return the XKeyEvent from XNextEvent()
to XFilterEvent(), a timeout is reached and the behavior is fallen
back to the previous one with a warning messsage and we can ask
the application to send the XKeyEvent to XFilterEvent() but also
libX11 provides LIBX11_ENABLE_FABRICATED_ORDER environment variable.
If the application runs with LIBX11_ENABLE_FABRICATED_ORDER=0, the
previous behavior is available until the application is fixed.
Closes: !246
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/246>
commit 898746f9b1fb384d6d24ed827c836ec8a0b3da3b
Author: Takao Fujiwara <tfujiwar@redhat.com>
Date: Fri Apr 26 01:29:34 2024 +0900
ximcp: Unmark fabricated with serial 0 and Xic commit_info
GTK2 XIM resets the XKeyEvent serial to 0 even if _XimCommitRecv()
sets the serial so now checks if the events are sent with
Xic->private.proto.commit_info.
Closes: !246
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/246>
commit 5a1e62d77b65ba148b1c6d1d22a81dc2b07e7d9e
Author: Takao Fujiwara <tfujiwar@redhat.com>
Date: Fri Apr 26 01:29:26 2024 +0900
Accept anon windows in XFilterEvent to update XIM state
When input focuses are switched quickly with shortcut keys in a Java
window, the focus is sometimes lost and the Window=0 is assigned in
XFilterEvent() but the XKeyEvent was forwarded by a XIM serer(IBus)
with XIM_FORWARD_EVENT -> XNextEvent() -> XFilterEvent() and the event
needs to be forwarded to the XIM XKeyEvent press and release filters
to update the XIM state with Window=0 likes _XimPendingFilter() and
_XimUnfabricateSerial().
Closes: #205, #206
Fixes: 024d229f ("ximcp: Unmark to fabricate key events with XKeyEvent serial")
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/246>
commit 5a14178c7cc408f425fe298aeade3dee749b1ca1
Author: Takao Fujiwara <tfujiwar@redhat.com>
Date: Fri Apr 26 00:49:14 2024 +0900
ximcp: Add fabricated_time in XimProtoPrivate for timeout
When users type keys quickly, some applications using Steam or Java
do not call XNextEvent() for a key event but _XimFilterKeypress()
and _XimFilterKeyrelease() expect to receive the key events
forwarded by input methods.
Now fabricated_time Time value is added to XimProtoPrivate to check
the timeout value.
Closes: #205
Fixes: 024d229f ("ximcp: Unmark to fabricate key events with XKeyEvent serial")
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/246>
commit 1181abd6ffede3ac5663a3a3d4ee66aef1fa553b
Author: Takao Fujiwara <tfujiwar@redhat.com>
Date: Fri Apr 12 10:50:33 2024 +0900
imDefLkup: Mark and unmark fabricated with serial 0
GTK2 applications with GTK_IM_MODULE=xim sets the serial number 0
to the XKeyEvent and the previous _XimFabricateSerial() logic did
not work for the applications.
Now the API marks to fabricate with the serial 0.
Closes: #205
Fixes: 024d229f ("ximcp: Unmark to fabricate key events with XKeyEvent serial")
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/246>
commit c7790072657f9fdbe8cda031776617088c5f11db
Author: Takao Fujiwara <tfujiwar@redhat.com>
Date: Fri Apr 12 10:21:43 2024 +0900
imDefLkup: Commit first info in XimCommitInfo
Xic.private.proto.commit_info can receive multiple XimCommitInfo
when typing keys very quickly like an bar code scanner (or evemu-play)
and the first info in XimCommitInfo should be committed to keep
the typing key order.
This and 041b5291 are same patches but the regression issues will be
fixed by the later patches.
Closes: #198
Fixes: 041b5291 ("imDefLkup: Commit first info in XimCommitInfo")
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/246>
commit 13e9ac4d458069c81d795f6b4842814d30431b4b
Author: Takao Fujiwara <tfujiwar@redhat.com>
Date: Fri Apr 12 10:21:41 2024 +0900
ximcp: Unmark to fabricate key events with XKeyEvent serial
_XimProtoKeypressFilter() and _XimProtoKeyreleaseFilter() can
receive XKeyEvent from both the typing on the keyboard and the
callback of XIM_FORWARD_EVENT.
If the filter functions unmark to fabricate XKeyEvent from the typing
on the keyboard during receiving XKeyEvent from the callback of
XIM_FORWARD_EVENT with typing keys very quickly likes an bar code
scanner (or evemu-play), XIM server cannot receive some key events and
it causes the key typing order to get scrambled.
Now XIM client saves the serial in XKeyEvent and the filter functions
unmark to fabricate XKeyEvent from the callback of XIM_FORWARD_EVENT
only.
This and 024d229f are same patches but the regression issues will be
fixed by the later patches.
Closes: #198
Fixes: 024d229f ("ximcp: Unmark to fabricate key events with XKeyEvent serial")
Part-of: <https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/246>
commit a465588218c1643eedc35b3c24409cb775454eee
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Fri Apr 5 15:50:06 2024 -0700
libX11 1.8.9
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 52a191ee096e93cf711f77b6a56c508b68afc0b6
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date: Fri Apr 5 13:15:32 2024 +1000
Revert "ximcp: Unmark to fabricate key events with XKeyEvent serial"
This commit causes a regression, see #205, #206, #207, #208.
This reverts commit 024d229fdf88a7755577b01b46af6ef908d599e0.
commit 3ea9f4f769fecbbc8c5210c5833ad83ab8d9e97e
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date: Fri Apr 5 13:14:33 2024 +1000
Revert "imDefLkup: Commit first info in XimCommitInfo"
This commit causes a regression, see #205, #206, #207, #208.
This reverts commit 041b5291f0956c5cda5054be2981c0d02b009a4c.
commit 9afd55ada5d7a3c1d3ed23ff8451629a1d989a7f
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Mon Mar 25 11:51:03 2024 -0700
xlibi18n: restore parse_line1 for WIN32 builds
Accidentally removed by __UNIXOS2__ cleanup
Closes: #204
Fixes: 225a4bbb ("unifdef __UNIXOS2__")
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit e4927d0c4fbf950bc45fc27309290e1911e75f42
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sun Mar 24 15:02:23 2024 -0700
libX11 1.8.8
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 4ab58f26d388c82ffe46ef1c7dd1cee6259eec8a
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Wed Feb 21 18:23:36 2024 -0800
unifdef NULL_NOT_ZERO
I can't find any evidence this was ever defined, should only have
been needed for odd-ball pre-C89 compilers.
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 7bb2a5050a2f6049c92b301fae1cf89532b70060
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Wed Feb 21 18:18:46 2024 -0800
unifdef USL_SHAREDLIB
I can't find any history of this being set in the imake or autoconf builds
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 4400a68b3a5ecacd1f997d41a0572544fa8fe544
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sat Feb 17 15:37:41 2024 -0800
unifdef Lynx
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 1e56b27429667e772b15b0f39863a8467297062b
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sun Feb 11 15:15:00 2024 -0800
unifdef __QNX__
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit ab0a3014822687da48cd3784253c34dea0a6ad2c
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sun Feb 11 15:10:59 2024 -0800
unifdef __uxp__
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 4ce3962b701c502acc96b6eaf104a5ffc317c5d7
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sun Feb 11 15:07:15 2024 -0800
unifdef __vax__
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 65a6f162fd9fee4e647ac49c546c5d6a1655c58c
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sun Feb 11 15:03:19 2024 -0800
unifdef __sgi_not_xconsortium
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 3296d7b8d14a6c114489d40b76e8da339e11b25c
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sun Feb 11 15:01:25 2024 -0800
unifdef __sgi
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 4322fff7e125c7975dc1b83c433b904c7d3384b5
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sun Feb 11 15:00:34 2024 -0800
unifdef sgi
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 613d3624c2cc0ab2f18206e165a3e4a02e261148
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sun Feb 11 14:59:28 2024 -0800
unifdef hpux
Also removes shl_load() support, which was only buildable for HP-UX
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 225a4bbbbd174e26cc408640e10f3c37f81f3a3f
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sun Feb 11 14:56:22 2024 -0800
unifdef __UNIXOS2__
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 0df284b450933e0239d1a85a7ff2d0c9d44d22af
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sun Feb 11 14:50:29 2024 -0800
unifdef ultrix
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit c3f3eb1284c59305568288923810dc155df6025c
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sun Feb 11 14:49:13 2024 -0800
unifdef AIXV3
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit b35344c9a74b478509e33384cc99bcc4fd092a2d
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date: Sun Feb 11 14:47:31 2024 -0800
unifdef __osf__
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
commit 041b5291f0956c5cda5054be2981c0d02b009a4c
Author: Takao Fujiwara <tfujiwar@redhat.com>
Date: Wed Jan 31 20:27:57 2024 +0900
imDefLkup: Commit first info in XimCommitInfo
Xic.private.proto.commit_info can receive multiple XimCommitInfo
when typing keys very quickly like an bar code scanner (or evemu-play)
and the first info in XimCommitInfo should be committed to keep
the typing key order.
Fixes: #198
commit 024d229fdf88a7755577b01b46af6ef908d599e0
Author: Takao Fujiwara <tfujiwar@redhat.com>
Date: Wed Jan 31 20:26:40 2024 +0900
ximcp: Unmark to fabricate key events with XKeyEvent serial
_XimProtoKeypressFilter() and _XimProtoKeyreleaseFilter() can
receive XKeyEvent from both the typing on the keyboard and the
callback of XIM_FORWARD_EVENT.
If the filter functions unmark to fabricate XKeyEvent from the typing
on the keyboard during receiving XKeyEvent from the callback of
XIM_FORWARD_EVENT with typing keys very quickly likes an bar code
scanner (or evemu-play), XIM server cannot receive some key events and
it causes the key typing order to get scrambled.
Now XIM client saves the serial in XKeyEvent and the filter functions
unmark to fabricate XKeyEvent from the callback of XIM_FORWARD_EVENT
only.
Fixes: #198
commit ae3eca18cec44a953789c7f77ffab888713ed132
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date: Thu Nov 30 15:05:51 2023 +1000
Fix _XkbReadGetDeviceInfoReply for nButtons == dev->buttons
XkbGetDeviceInfo(dpy, XkbXI_ButtonActionsMask, 2, 0, 0) always returns
NULL because the number of buttons on the device equals (unsurpisingly)
the number of buttons requested (i.e. first + nBtns == dev->nbuttons).
This currently causes it to bail out and return NULL.
Fixes f293659d5a4024bda386305bb7ebeb4647c40934
commit 0a951047f64e87c5ab328084310bf27bcd4964f3
Author: Walter Harms <wharms@bfs.de>
Date: Mon Jan 8 17:18:19 2024 +0100
_XimProtoIMFree:no need to check arg for Xfree()
Xfree() will happily ignore NULL, no need to check
commit e8ef19f48870cfd46c8ce5ef2258548834e50bdb
Author: Julien Cristau <jcristau@debian.org>
Date: Mon Nov 21 11:43:20 2022 +0100
Add symbols file for libx11-xcb1.