Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[xsrc/xorg]: xsrc/external/mit/libX11/dist initial import of libX11-1.7.0



details:   https://anonhg.NetBSD.org/xsrc/rev/8883bfa091b2
branches:  xorg
changeset: 10706:8883bfa091b2
user:      mrg <mrg%NetBSD.org@localhost>
date:      Tue Apr 27 06:10:56 2021 +0000

description:
initial import of libX11-1.7.0

diffstat:

 external/mit/libX11/dist/ChangeLog                        |   572 ++
 external/mit/libX11/dist/Makefile.in                      |    30 +-
 external/mit/libX11/dist/README.md                        |    52 +-
 external/mit/libX11/dist/aclocal.m4                       |  2538 ++++++------
 external/mit/libX11/dist/compile                          |    17 +-
 external/mit/libX11/dist/configure                        |   441 +-
 external/mit/libX11/dist/configure.ac                     |     7 +-
 external/mit/libX11/dist/cpprules.in                      |     3 +-
 external/mit/libX11/dist/depcomp                          |     8 +-
 external/mit/libX11/dist/include/Makefile.in              |    20 +-
 external/mit/libX11/dist/include/X11/ImUtil.h             |    12 +-
 external/mit/libX11/dist/include/X11/Xlib.h               |    10 +
 external/mit/libX11/dist/include/X11/Xlibint.h            |    43 +-
 external/mit/libX11/dist/install-sh                       |    49 +-
 external/mit/libX11/dist/ltmain.sh                        |   225 +-
 external/mit/libX11/dist/m4/ax_gcc_builtin.m4             |   176 +
 external/mit/libX11/dist/m4/libtool.m4                    |    27 +-
 external/mit/libX11/dist/man/Makefile.in                  |    22 +-
 external/mit/libX11/dist/man/XSetErrorHandler.man         |    12 +-
 external/mit/libX11/dist/man/xkb/Makefile.in              |    20 +-
 external/mit/libX11/dist/missing                          |    16 +-
 external/mit/libX11/dist/modules/Makefile.in              |    22 +-
 external/mit/libX11/dist/modules/im/Makefile.in           |    22 +-
 external/mit/libX11/dist/modules/im/ximcp/Makefile.in     |   150 +-
 external/mit/libX11/dist/modules/im/ximcp/imDefIm.c       |     4 +-
 external/mit/libX11/dist/modules/im/ximcp/imInsClbk.c     |    11 +-
 external/mit/libX11/dist/modules/im/ximcp/imTrX.c         |     1 +
 external/mit/libX11/dist/modules/im/ximcp/imTrans.c       |     1 +
 external/mit/libX11/dist/modules/lc/Makefile.in           |    22 +-
 external/mit/libX11/dist/modules/lc/Utf8/Makefile.in      |    37 +-
 external/mit/libX11/dist/modules/lc/def/Makefile.in       |    37 +-
 external/mit/libX11/dist/modules/lc/gen/Makefile.in       |    37 +-
 external/mit/libX11/dist/modules/lc/gen/lcGenConv.c       |    10 +-
 external/mit/libX11/dist/modules/om/Makefile.in           |    22 +-
 external/mit/libX11/dist/modules/om/generic/Makefile.in   |    69 +-
 external/mit/libX11/dist/nls/Makefile.in                  |    25 +-
 external/mit/libX11/dist/nls/compose.dir.pre              |     3 -
 external/mit/libX11/dist/nls/en_US.UTF-8/Compose.pre      |    42 +
 external/mit/libX11/dist/nls/locale.alias.pre             |   112 +-
 external/mit/libX11/dist/nls/locale.dir.pre               |     5 +-
 external/mit/libX11/dist/nls/sr_RS.UTF-8/Compose.pre      |   113 +
 external/mit/libX11/dist/nls/sr_RS.UTF-8/XI18N_OBJS       |     8 +
 external/mit/libX11/dist/specs/Makefile.in                |    22 +-
 external/mit/libX11/dist/specs/XIM/Makefile.in            |    20 +-
 external/mit/libX11/dist/specs/XKB/Makefile.in            |    20 +-
 external/mit/libX11/dist/specs/i18n/Makefile.in           |    22 +-
 external/mit/libX11/dist/specs/i18n/compose/Makefile.in   |    20 +-
 external/mit/libX11/dist/specs/i18n/framework/Makefile.in |    20 +-
 external/mit/libX11/dist/specs/i18n/localedb/Makefile.in  |    20 +-
 external/mit/libX11/dist/specs/i18n/trans/Makefile.in     |    20 +-
 external/mit/libX11/dist/specs/libX11/Makefile.in         |    20 +-
 external/mit/libX11/dist/src/Context.c                    |     1 +
 external/mit/libX11/dist/src/ErrHndlr.c                   |    25 +
 external/mit/libX11/dist/src/GetImage.c                   |    15 +-
 external/mit/libX11/dist/src/GetWAttrs.c                  |     2 +-
 external/mit/libX11/dist/src/ImUtil.c                     |     8 +-
 external/mit/libX11/dist/src/IntAtom.c                    |     1 +
 external/mit/libX11/dist/src/KeyBind.c                    |     1 +
 external/mit/libX11/dist/src/Makefile.am                  |     2 +-
 external/mit/libX11/dist/src/Makefile.in                  |  1255 ++++-
 external/mit/libX11/dist/src/OpenDis.c                    |     4 +-
 external/mit/libX11/dist/src/PutBEvent.c                  |     4 +-
 external/mit/libX11/dist/src/PutImage.c                   |     4 +-
 external/mit/libX11/dist/src/RegstFlt.c                   |     1 +
 external/mit/libX11/dist/src/SetCRects.c                  |     2 +-
 external/mit/libX11/dist/src/Window.c                     |     6 +-
 external/mit/libX11/dist/src/XlibInt.c                    |    41 +-
 external/mit/libX11/dist/src/Xxcbint.h                    |     1 +
 external/mit/libX11/dist/src/config.h.in                  |    10 +
 external/mit/libX11/dist/src/locking.c                    |    26 +
 external/mit/libX11/dist/src/locking.h                    |    12 +
 external/mit/libX11/dist/src/util/Makefile.in             |    41 +-
 external/mit/libX11/dist/src/xcb_disp.c                   |     1 +
 external/mit/libX11/dist/src/xcb_io.c                     |   141 +-
 external/mit/libX11/dist/src/xcms/LRGB.c                  |     2 +-
 external/mit/libX11/dist/src/xcms/Makefile.in             |   326 +-
 external/mit/libX11/dist/src/xkb/Makefile.in              |   145 +-
 external/mit/libX11/dist/src/xkb/XKBBind.c                |    14 +
 external/mit/libX11/dist/src/xkb/XKBUse.c                 |     1 +
 external/mit/libX11/dist/src/xlibi18n/Makefile.in         |   185 +-
 external/mit/libX11/dist/src/xlibi18n/XimProto.h          |     4 +-
 external/mit/libX11/dist/src/xlibi18n/lcConv.c            |    25 +-
 external/mit/libX11/dist/src/xlibi18n/lcDB.c              |     2 +-
 external/mit/libX11/dist/src/xlibi18n/lcGeneric.c         |     8 +-
 external/mit/libX11/dist/src/xlibi18n/lcPublic.c          |     1 +
 external/mit/libX11/dist/src/xlibi18n/lcStd.c             |    50 +-
 external/mit/libX11/dist/src/xlibi18n/lcUTF8.c            |     2 +-
 external/mit/libX11/dist/src/xlibi18n/lcWrap.c            |    33 +-
 external/mit/libX11/dist/test-driver                      |    10 +-
 89 files changed, 5074 insertions(+), 2575 deletions(-)

diffs (truncated from 11197 to 300 lines):

diff -r a2890e523e13 -r 8883bfa091b2 external/mit/libX11/dist/ChangeLog
--- a/external/mit/libX11/dist/ChangeLog        Tue Apr 27 03:59:14 2021 +0000
+++ b/external/mit/libX11/dist/ChangeLog        Tue Apr 27 06:10:56 2021 +0000
@@ -1,3 +1,575 @@
+commit ca8115186f810eccb7d86b0979980eff3ba95f0b
+Author: Keith Packard <keithp%keithp.com@localhost>
+Date:   Thu Nov 19 11:30:41 2020 -0800
+
+    Version 1.7.0
+    
+    Release notes in README.md, version bump in configure.ac
+    
+    Signed-off-by: Keith Packard <keithp%keithp.com@localhost>
+
+commit 325ac177fb6d38f4c7689d9ce059792eaef388ef
+Author: Keith Packard <keithp%keithp.com@localhost>
+Date:   Mon Nov 16 15:48:40 2020 -0800
+
+    Update libX11 .so version to 6.4.0
+    
+    There have been API additions since the previous release, so the
+    .so version needs to change.
+    
+    Signed-off-by: Keith Packard <keithp%keithp.com@localhost>
+
+commit 103e2e11519984aa5746c06e7d90d1f5bc8174a3
+Author: Alan Coopersmith <alan.coopersmith%oracle.com@localhost>
+Date:   Sat Oct 31 09:24:01 2020 -0700
+
+    Don't leave dangling pointers in Free functions
+    
+    While these are mostly called during teardown of larger structures
+    that are about to themselves be freed, there's no guarantee that
+    will always be the case, so try to be safer here.
+    
+    [ This bug was found by the Parfait 4.0 bug checking tool.
+      http://labs.oracle.com/pls/apex/f?p=labs:49:::::P49_PROJECT_ID:13 ]
+    
+    v2: Deduplicate & simplify pointer clearing in _XFreeEventCookies
+        as suggested by @keithp
+    
+    Signed-off-by: Alan Coopersmith <alan.coopersmith%oracle.com@localhost>
+
+commit 7d70e302218e2ec8518548ddcdc02d828e7889af
+Author: Alan Coopersmith <alan.coopersmith%oracle.com@localhost>
+Date:   Sat Oct 31 08:56:34 2020 -0700
+
+    XimProto.h: wrap XIM_HEADER_SIZE definition in parens
+    
+    Resolves parfait warning of potential macro misinterpretation if
+    expanded in the midst of other arithmetic operations with higher
+    precedence.
+    
+    Signed-off-by: Alan Coopersmith <alan.coopersmith%oracle.com@localhost>
+
+commit a3c0b5dbd6b12ae64bc78b11795647a7f6df0c7a
+Author: Keith Packard <keithp%keithp.com@localhost>
+Date:   Tue Nov 17 13:15:18 2020 -0800
+
+    Copy locale modifiers when creating XimInstCallback [v2]
+    
+    Locale modifiers may be freed whenever XSetLocaleModifiers gets
+    called, even if the locale hasn't changed. This means that we cannot
+    save a pointer to those modifiers in the XimInstCallback record and
+    must, instead, make a copy of them instead.
+    
+    This fixes a problem uncovered when running wish under libasan as
+    follows (on current Debian unstable):
+    
+            $ LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libasan.so.6 wish
+    
+    Reported-by: Vittorio Zecca <zeccav%gmail.com@localhost>
+    Signed-off-by: Keith Packard <keithp%keithp.com@localhost>
+    
+    v2:
+            Remove incorrect 'else' token found by @alanc
+
+commit 960e2e0cfac12c3477c672d0d40818a0dc74aca5
+Author: Peter Hutterer <peter.hutterer%who-t.net@localhost>
+Date:   Mon Nov 16 09:34:57 2020 +1000
+
+    gitlab CI: add a basic build test
+    
+    Using Arch as base distribution here because we can expect our dependencies to
+    be up-to-date. We rely on the Arch for our dependencies rather than building
+    those from git (notably: xorg-macros, xtrans and libxcb).
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer%who-t.net@localhost>
+
+commit dbb55e1a5e82870466b095097d9e46046680ec25
+Author: Frediano Ziglio <fziglio%redhat.com@localhost>
+Date:   Wed Jan 29 09:06:54 2020 +0000
+
+    Fix poll_for_response race condition
+    
+    In poll_for_response is it possible that event replies are skipped
+    and a more up to date message reply is returned.
+    This will cause next poll_for_event call to fail aborting the program.
+    
+    This was proved using some slow ssh tunnel or using some program
+    to slow down server replies (I used a combination of xtrace and strace).
+    
+    How the race happens:
+    - program enters into poll_for_response;
+    - poll_for_event is called but the server didn't still send the reply;
+    - pending_requests is not NULL because we send a request (see call
+      to  append_pending_request in _XSend);
+    - xcb_poll_for_reply64 is called from poll_for_response;
+    - xcb_poll_for_reply64 will read from server, at this point
+      server reply with an event (say sequence N) and the reply to our
+      last request (say sequence N+1);
+    - xcb_poll_for_reply64 returns the reply for the request we asked;
+    - last_request_read is set to N+1 sequence in poll_for_response;
+    - poll_for_response returns the response to the request;
+    - poll_for_event is called (for instance from another poll_for_response);
+    - event with sequence N is retrieved;
+    - the N sequence is widen, however, as the "new" number computed from
+      last_request_read is less than N the number is widened to N + 2^32
+      (assuming last_request_read is still contained in 32 bit);
+    - poll_for_event enters the nested if statement as req is NULL;
+    - we compare the widen N (which now does not fit into 32 bit) with
+      request (which fits into 32 bit) hitting the throw_thread_fail_assert.
+    
+    To avoid the race condition and to avoid the sequence to go back
+    I check again for new events after getting the response and
+    return this last event if present saving the reply to return it
+    later.
+    
+    To test the race and the fix it's helpful to add a delay (I used a
+    "usleep(5000)") before calling xcb_poll_for_reply64.
+    
+    Original patch written by Frediano Ziglio, see
+    https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/34
+    
+    Reworked primarily for readability by Peter Hutterer, see
+    https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/53
+    
+    Signed-off-by: Peter Hutterer <peter.hutterer%who-t.net@localhost>
+
+commit 30ccef3a48029bf4fc31d4abda2d2778d0ad6277
+Author: Keith Packard <keithp%keithp.com@localhost>
+Date:   Sat Nov 7 22:22:47 2020 -0800
+
+    Avoid recursing through _XError due to sequence adjustment
+    
+    This patch is based on research done by Dmitry Osipenko to uncover the
+    cause of a large class of Xlib lockups.
+    
+    _XError must unlock and re-lock the display around the call to the
+    user error handler function. When re-locking the display, two
+    functions are called to ensure that the display is ready to generate a request:
+    
+        _XIDHandler(dpy);
+        _XSeqSyncFunction(dpy);
+    
+    The first ensures that there is at least one XID available to use
+    (possibly calling _xcb_generate_id to do so). The second makes sure a
+    reply is received at least every 65535 requests to keep sequence
+    numbers in sync (possibly generating a GetInputFocus request and
+    synchronously awaiting the reply).
+    
+    If the second of these does generate a GetInputFocus request and wait
+    for the reply, then a pending error will cause recursion into _XError,
+    which deadlocks the display.
+    
+    One seemingly easy fix is to have _XError avoid those calls by
+    invoking InternalLockDisplay instead of LockDisplay. That function
+    does everything that LockDisplay does *except* call those final two
+    functions which may end up receiving an error.
+    
+    However, that doesn't protect the system from applications which call
+    some legal Xlib function from within their error handler. Any Xlib
+    function which cannot generate protocol or wait for events is valid,
+    including many which invoke LockDisplay.
+    
+    What we need to do is make LockDisplay skip these two function calls
+    precisely when it is called from within the _XError context for the
+    same display.
+    
+    This patch accomplishes this by creating a list of threads in the
+    display which are in _XError, and then having LockDisplay check the
+    current thread against those list elements.
+    
+    Inspired-by: Dmitry Osipenko <digetx%gmail.com@localhost>
+    Signed-off-by: Keith Packard <keithp%keithp.com@localhost>
+    Tested-by: Dmitry Osipenko <digetx%gmail.com@localhost>
+    Reviewed-by: Dmitry Osipenko <digetx%gmail.com@localhost>
+
+commit c9c4d6efbf92ab51695e2e740319503221d68eed
+Author: Benno Schulenberg <bensberg%telfort.nl@localhost>
+Date:   Fri Nov 13 11:34:04 2020 +0100
+
+    nls: improve the comments for the Serbian compose sequences
+    
+    Also put an extra space before the lone combining characters
+    so they have some room to breathe.
+    
+    Signed-off-by: Benno Schulenberg <bensberg%telfort.nl@localhost>
+
+commit 3497dae3d9c52a252110b2a0983b82000be0fe8e
+Author: Benno Schulenberg <bensberg%telfort.nl@localhost>
+Date:   Fri Nov 13 11:23:09 2020 +0100
+
+    nls: remove mistaken Serbian compose sequences with combining diacritics
+    
+    Combining characters are not dead keys -- they have an immediate effect
+    and combine with the preceding character.  So they cannot be used in
+    compose sequences.
+    
+    Signed-off-by: Benno Schulenberg <bensberg%telfort.nl@localhost>
+
+commit 5cd60398b7787297008b13a848ed3cfbd7ef178d
+Author: Benno Schulenberg <bensberg%telfort.nl@localhost>
+Date:   Mon Nov 2 16:34:39 2020 +0100
+
+    nls: rename the obsolete sr_CS locale to sr_RS
+    
+    Fixes #107, for the most part.
+    
+    Signed-off-by: Benno Schulenberg <bensberg%telfort.nl@localhost>
+
+commit 7cf1729590534e257b851899cf03421b65c538e3
+Author: Keith Packard <keithp%keithp.com@localhost>
+Date:   Sat Nov 7 17:02:56 2020 -0800
+
+    Don't attempt to unload locale context data
+    
+    Most locale context users call _XlcCurrentLC, which returns a pointer
+    which never needs to be passed to _XCloseLC, meaning it has unbounded
+    lifetime, so that locale data can never be freed.
+    
+    Remove all reference counting and just leave all locales that were
+    ever used in memory.
+    
+    Signed-off-by: Keith Packard <keithp%keithp.com@localhost>
+    Acked-by: Martin Peres <martin.peres%mupuf.org@localhost>
+
+commit 87a8fd8051b823636c3c4f3c37c4cfd11fdb880d
+Author: Jacek Caban <jacek%codeweavers.com@localhost>
+Date:   Mon Aug 14 19:20:19 2017 +0200
+
+    Don't cache last lcd in _XlcCurrentLC.
+    
+    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=55678
+    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=68538
+    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=69088
+    
+    The way it's currently cached is not thread safe. As long as locale doesn't change, the same object is reused anyway.
+    
+    Signed-off-by: Jacek Caban <jacek%codeweavers.com@localhost>
+    Signed-off-by: Keith Packard <keithp%keithp.com@localhost>
+    Acked-by: Martin Peres <martin.peres%mupuf.org@localhost>
+
+commit 7a38c09b82ee2522d987c3da4af8af186e562c61
+Author: Keith Packard <keithp%keithp.com@localhost>
+Date:   Sat Nov 7 16:59:37 2020 -0800
+
+    Don't cache converters in _Xlcmbtowc and Xlcwctomb
+    
+    These functions were caching encoding conversion functions in static
+    variables which is not thread safe. Let the conversion loader do its
+    job and cache locale to converters there. It's less efficient, but
+    it's also (now) thread safe.
+    
+    Signed-off-by: Keith Packard <keithp%keithp.com@localhost>
+    Acked-by: Martin Peres <martin.peres%mupuf.org@localhost>
+
+commit b52ba5c209165fc2c533b77b86147b31763299f3
+Author: Jacek Caban <jacek%codeweavers.com@localhost>
+Date:   Mon Aug 14 19:20:20 2017 +0200
+
+    Make conv_list thread safe.
+    
+    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=55678
+    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=68538
+    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=69088
+    Signed-off-by: Jacek Caban <jacek%codeweavers.com@localhost>
+    Signed-off-by: Keith Packard <keithp%keithp.com@localhost>
+    Acked-by: Martin Peres <martin.peres%mupuf.org@localhost>
+
+commit 8b5ce3a9b1219c81711944880e5a1e1cfad3d956
+Author: Antti Savolainen <antti.savo%gmail.com@localhost>
+Date:   Wed Sep 16 07:47:26 2020 +0000
+
+    Added DOWNWARD ARROW support
+
+commit 7138826dccba9d538dfb142ce9af1a40d64ea849
+Author: Antti Savolainen <antti.savo%gmail.com@localhost>
+Date:   Tue Sep 8 00:54:23 2020 +0300
+
+    Added support for UPWARDS ARROW and ALMOST EQUAL TO
+    
+    Signed-off-by: Antti Savolainen <antti.savo%gmail.com@localhost>
+
+commit 56d59299f7433cdeb88bac970b06eb7df44df5bb
+Author: Jonathan Belsewir <jonbel%jonasund.de@localhost>
+Date:   Thu Nov 5 22:57:50 2020 +0000
+
+    Add less and greater to characters that are difficult to access on some keyboards
+



Home | Main Index | Thread Index | Old Index