commit 57f0d421a1320090d3a4948181fe228d86cc8977
Author: Matt Turner <mattst88@gmail.com>
Date:   Mon Jun 17 10:45:45 2019 -0400

    libX11 1.6.8
    
    Signed-off-by: Matt Turner <mattst88@gmail.com>

commit 5464b302bc0c4a055d3eac06c6ab15e209ff7668
Author: Matt Turner <mattst88@gmail.com>
Date:   Sun Jun 9 14:00:15 2019 -0700

    Use AC_SYS_LARGEFILE
    
    ... and include config.h in makekeys.c to get the definition of
    _FILE_OFFSET_BITS. Without it, libX11 can fail to build on a file
    system with 64-bit inode numbers.
    
    Bug: https://bugs.gentoo.org/550502
    Bug: https://bugs.gentoo.org/616140
    Signed-off-by: Matt Turner <mattst88@gmail.com>

commit 33b9148a833ab2ea46e44871da3c031bf1b78f77
Author: Ran Benita <ran234@gmail.com>
Date:   Thu Feb 13 20:55:08 2014 +0200

    Compose.man: fix escaped hexadecimal char description
    
    The man page says:
        Strings may be direct text encoded in the locale for which the
        compose file is to be used, or an escaped octal or hexadecimal
        character code.   Octal codes are specified as "\123" and
        hexadecimal codes as "\0x123a".
    
    But the grammar in the parser and the implementation say:
        ESCAPED_CHAR  ::= ('\\' | '\"' | OCTAL | HEX )
        HEX           ::= '\' (x|X) HEX_CHAR [HEX_CHAR]]
        HEX_CHAR      ::= (0|1|2|3|4|5|6|7|8|9|A|B|C|D|E|F|a|b|c|d|e|f)
    
    So "\0x123a" -> "\x3a".
    
    Signed-off-by: Ran Benita <ran234@gmail.com>
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit d9b2cc35edf01e4f751a9ccb5ac185745184cec0
Author: ojab <ojab@ojab.ru>
Date:   Mon Apr 24 20:12:17 2017 +0000

    Compose sequences for rouble sign
    
    Cyrillic combinations mirror the Qwerty-Jcuken keyboard layout.
    
    Signed-off-by: Slava Kardakov <ojab@ojab.ru>
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 3f211616f6414bd9958566c0ca137e87a2b6df95
Author: Pavel Labath <pavelo@centrum.sk>
Date:   Fri Nov 30 20:45:04 2012 +0100

    Fix a leak in XCreateFontSet
    
    a simple snippet like XFreeFontSet(d, XCreateFontSet(d, ...)) will generate lots of memory leaks,
    as evidenced by the following valgrind output:
    ==983== HEAP SUMMARY:
    ==983==     in use at exit: 39,409 bytes in 341 blocks
    ==983==   total heap usage: 4,795 allocs, 4,454 frees, 489,086 bytes allocated
    ==983==
    ==983== 1,688 (136 direct, 1,552 indirect) bytes in 1 blocks are definitely lost in loss record
    40 of 46
    ==983==    at 0x4C2B042: realloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
    ==983==    by 0x56D5A93: add_codeset.clone.9 (in /usr/lib64/libX11.so.6.3.0)
    ==983==    by 0x56D5FE0: load_generic (in /usr/lib64/libX11.so.6.3.0)
    ==983==    by 0x56D7612: initialize (in /usr/lib64/libX11.so.6.3.0)
    ==983==    by 0x56D7E75: _XlcCreateLC (in /usr/lib64/libX11.so.6.3.0)
    ==983==    by 0x56F9A5F: _XlcUtf8Loader (in /usr/lib64/libX11.so.6.3.0)
    ==983==    by 0x56DF815: _XOpenLC (in /usr/lib64/libX11.so.6.3.0)
    ==983==    by 0x56B255A: XOpenOM (in /usr/lib64/libX11.so.6.3.0)
    ==983==    by 0x56A665A: XCreateFontSet (in /usr/lib64/libX11.so.6.3.0)
    ==983==    by 0x4FCA80: conky::x11_output::create_gc() (x11.cc:746)
    ==983==    by 0x4FC3B4: conky::x11_output::use_own_window() (x11.cc:602)
    ==983==    by 0x4FAD42: conky::priv::own_window_setting::set(bool const&, bool) (x11.cc:92)
    ==983==
    ==983== LEAK SUMMARY:
    ==983==    definitely lost: 136 bytes in 1 blocks
    ==983==    indirectly lost: 1,552 bytes in 34 blocks
    ==983==      possibly lost: 0 bytes in 0 blocks
    ==983==    still reachable: 37,721 bytes in 306 blocks
    ==983==         suppressed: 0 bytes in 0 blocks
    
    This patch makes the leak dissappear (Well, at least the "definitely lost part". The "still
    reachable" thingy remains). After some analysis, I've discovered that the XLCd structure is
    destroyed improperly. The "constructor" is in lcGeneric.c, but the structure is destroyed using
    code from lcPublic.c. I've found that changing the destructor call to _XlcDestroyLC executes the
    correct code path, and I'm pretty sure this is correct (the object was constructed using
    _XlcCreateLC, it make sense to destroy it using its conterpart).
    
    So far I haven't observed any strange behaviour on my system caused by this change (although, I'm
    not sure, how many programs actually use this function).
    
    Signed-off-by: Pavel Labath <pavelo@centrum.sk>
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 4645e219133458781e3fb48eaea6a74cccb1b9aa
Author: Jon Turney <jon.turney@dronecode.org.uk>
Date:   Tue Apr 30 14:39:06 2019 +0100

    Avoid using libtool wrapper for makekeys
    
    For Windows targets, libtool uses a wrapper executable, not a wrapper
    script (see [1]), which it compiles with the host compiler.  This
    doesn't work when cross-compiling.
    
    Since we don't actually need to link with anything, use the libtool flag
    -all-static to tell it to stay completely out of this.
    
    [1] https://www.gnu.org/software/libtool/manual/html_node/Wrapper-executables.html

commit 6886d9ba06826785a8ccb312c04ea82b91bb6a25
Author: Jon Turney <jon.turney@dronecode.org.uk>
Date:   Wed Apr 24 12:50:41 2019 +0100

    Use EXEEXT_FOR_BUILD for makekeys
    
    Use EXEXT_FOR_BUILD, to fix cross-compiling where EXEEXT differs from
    EXEEXT_FOR_BUILD, such as when building for Windows from unix.
    
    (Note: As written, this assumes EXEEXT_FOR_BUILD is always empty when
    cross-compiling.  There could be some elaborate autodetection for
    EXEXT_FOR_BUILD, but for the moment, if you are cross-compiling from
    Windows to Unix, you'll need to set EXEEXT_FOR_BUILD explicity...)

commit a121b7b0c210efe10bf93453b29050282324c906
Author: Jon Turney <jon.turney@dronecode.org.uk>
Date:   Tue Apr 30 14:30:41 2019 +0100

    Remove makekeys dependency on X headers
    
    This is the patch from https://bugs.freedesktop.org/show_bug.cgi?id=6669
    by Pierre Ossman, reworked for master.
    
    Avoid using LIBS (which are for host, but we don't need) and rewrite
    makekeys slightly to avoid needing to include any X headers, which
    avoids potentially having -I with host paths in CFLAGS, which can cause
    standard headers e.g. stdio.h for the host to also be used, which can
    break things...

commit cbb59d1727cb1bfcff91b54fd55f4139e360b7ab
Author: Samuel Thibault <samuel.thibault@ens-lyon.org>
Date:   Fri Jun 7 23:35:33 2019 +0200

    Braille: Fix typing quickly
    
    On finishing releasing Braille keys, we should clear the just-commited
    pattern, to reset the state to initial state, and avoid having to wait for
    0.3s before typing the next pattern.
    
    Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
    Tested-by: Jean-Philippe Mengual <jpmengual@hypra.fr>

commit 99a2cf1aa0b58391078d5d3edf0a7dab18c7745d
Author: Tapani Pälli <tapani.palli@intel.com>
Date:   Mon May 13 08:29:49 2019 +0300

    Protect colormap add/removal with display lock
    
    This fixes a bug where concurrent threads call XCreateColormap and
    XFreeColormap corrupting a linked list where colormap structures
    are stored.
    
    Fixes: https://gitlab.freedesktop.org/xorg/lib/libx11/issues/94
    
    v2: handle XCopyColormapAndFree also (Adam Jackson)
    
    Signed-off-by: Tapani Pälli <tapani.palli@intel.com>

commit fea80d03c381a4de379863c0d41f6d4c00f15e1e
Author: Jon Turney <jon.turney@dronecode.org.uk>
Date:   Wed Mar 13 13:12:20 2019 +0000

    Add autoconf checks for headers we include for FIONREAD
    
    Add autoconf checks for the extra headers we include to define FIONREAD.
    This needs sys/socket.h on Cygwin, and none of the alternatives on
    Windows.

commit 87c77a1e6d7034536e9d25ce24a667ebf53486a7
Author: Matthias Dieter Wallnöfer <matthias.wallnoefer@lugbz.org>
Date:   Mon Mar 11 14:19:52 2019 +0000

    locale.alias.pre - add the de_IT locale
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 568f77f414072506bbe48646637c872987c97e63
Author: Matthias Dieter Wallnöfer <matthias.wallnoefer@lugbz.org>
Date:   Mon Mar 11 14:17:10 2019 +0000

    locale.dir.pre - add the de_IT locale
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 38c0c92feaef7dc4a72920b1dd79872e6578086c
Author: Matthias Dieter Wallnöfer <matthias.wallnoefer@lugbz.org>
Date:   Mon Mar 11 14:12:07 2019 +0000

    compose.dir.pre - add de_IT locale
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 49f835611ba6ab82e68b7b851507931c142db7a5
Author: Matthias Dieter Wallnöfer <matthias.wallnoefer@lugbz.org>
Date:   Tue Jan 29 15:34:34 2019 +0000

    Update locale.alias.pre - introduce the de_LI aliases (equivalent to de_CH)
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit ed669234d0cd5933618aa5fd2da697b59845b9be
Author: Matthias Dieter Wallnöfer <matthias.wallnoefer@lugbz.org>
Date:   Tue Jan 29 15:28:18 2019 +0000

    locale.dir.pre - fix the de_LI latin15 locale
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 82b5c1454a49333b4d94984d40db79cff386d37f
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Feb 3 08:31:41 2019 +0100

    compose.dir.pre: Give the C.UTF-8 locale a full set of UTF-8 compose sequences
    
    Signed-off-by: Josh Triplett <josh@joshtriplett.org>

commit 603c3ab25a692194805fd4b0c62afac8093897fe
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Mar 9 20:58:07 2019 -0800

    Add missing close paren to XrmGetStringDatabase synopsis in man page
    
    Fixes: commit 0642e99ac05afb0c
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 6590cc41e3c5c5c836a49a2c82774d7cc9ab3c85
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Feb 23 11:12:27 2019 -0800

    Include reallocarray.h in tarballs so "make distcheck" passes
    
    Fixes: commit bcf7b5aa06c23aee
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit a4a7df06351ce9565d298a84547ff71f2d220fbf
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Feb 23 11:04:41 2019 -0800

    XlibInt.c: include headers needed for ioctl(...FIONREAD...) on Solaris
    
    Fixes: commit 5538b3e4ae6dee
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 38ec04de7e537dde6b7b1eaca46b1a24fcdbc044
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Feb 23 10:48:26 2019 -0800

    specs/XKB: Fix misprint in documentation of XkbFreeGeomOverlayKeys()
    
    Fixes: https://gitlab.freedesktop.org/xorg/lib/libx11/issues/86
    aka: https://bugs.freedesktop.org/show_bug.cgi?id=23550
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 74f2f26811ae82b15dede31504b0eb541f7a3293
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Feb 23 10:46:05 2019 -0800

    specs/XKB: Fix misprint in documentation of XkbAllocGeomOverlayKeys()
    
    Fixes: https://gitlab.freedesktop.org/xorg/lib/libx11/issues/85
    aka: https://bugs.freedesktop.org/show_bug.cgi?id=23549
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 66b039a41690f076e962ac6bd46cca017360a7d1
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Feb 23 10:44:15 2019 -0800

    specs/XKB: Fix misprint in documentation of XkbAllocGeomOverlayRows()
    
    Fixes: https://gitlab.freedesktop.org/xorg/lib/libx11/issues/84
    aka: https://bugs.freedesktop.org/show_bug.cgi?id=23548
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit cdea0e840315171f8390adc63a2397ddf111eea4
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Feb 23 10:38:08 2019 -0800

    specs/XKB: Fix misprint in documentation of XkbGetNamedGeometry()
    
    Fixes: https://gitlab.freedesktop.org/xorg/lib/libx11/issues/82
    aka: https://bugs.freedesktop.org/show_bug.cgi?id=23520
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit c72d17ada98723cd9e03ddf06680a0e54b2c3089
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Feb 23 10:30:32 2019 -0800

    XkbAllocGeomOverlayKey man page should be named XkbAllocGeomOverlayKeys
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 05002b8aef9544c8545e0823a02cf14f335d2b68
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sun Feb 17 15:13:25 2019 -0800

    Fix man page typo: XkbAllBellNotifyMask -> XkbAllBellEventsMask
    
    Reported-by: Daniel Hahler <git@thequod.de>
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 5538b3e4ae6dee32c47db9dfc85b07bbe7b90f6c
Author: Adam Jackson <ajax@redhat.com>
Date:   Fri Mar 24 11:07:36 2017 -0400

    _XDefaultIOError: Do better at detecting explicit shutdown
    
    Currently, when the X server crashes or a client is disconnected with
    XKillClient, you get a somewhat confusing error message from libX11
    along the lines of:
    
    XIO:  fatal IO error 11 (Resource temporarily unavailable) on X server ":0"
          after 98 requests (40 known processed) with 0 events remaining.
    
    What's happening here is the previous recvmsg has thrown EAGAIN, since
    the socket is non-blocking. In this case, check whether the socket has
    any more data to read, and if not treat it like EPIPE.
    
    Signed-off-by: Adam Jackson <ajax@redhat.com>

commit 6d2cde9633b5ee020cb60caea1cf61e090b86dd2
Author: Adam Jackson <ajax@redhat.com>
Date:   Fri Mar 24 11:07:35 2017 -0400

    _XDefaultIOError: Reformat to be less ugly
    
    Signed-off-by: Adam Jackson <ajax@redhat.com>
    Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 003e30a66a249f5c70b30d1c187385124cd4cdad
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Tue Jan 1 14:34:04 2019 -0800

    Avoid use-after-free in _XimProtoSetIMValues()
    
    Fixes gitlab issue #49
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 30656fd66ad47aeaca0bfc237a818f189554f07e
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Tue Jan 1 12:21:04 2019 -0800

    Fix implicit conversion warnings in _XlcCreateDefaultCharSet
    
    lcCharSet.c:187:50: warning: implicit conversion changes signedness:
          'int' to 'unsigned long' [-Wsign-conversion]
        tmp = Xmalloc(name_len + 1 + ct_sequence_len + 1);
              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
    ../../include/X11/Xlibint.h:453:32: note: expanded from macro 'Xmalloc'
                           ~~~~~~  ^~~~
    lcCharSet.c:192:31: warning: implicit conversion changes signedness:
          'int' to 'unsigned long' [-Wsign-conversion]
        memcpy(tmp, name, name_len+1);
        ~~~~~~            ~~~~~~~~^~
    lcCharSet.c:216:45: warning: implicit conversion changes signedness:
          'int' to 'unsigned long' [-Wsign-conversion]
        memcpy(tmp, ct_sequence, ct_sequence_len+1);
        ~~~~~~                   ~~~~~~~~~~~~~~~^~
    lcCharSet.c:183:16: warning: implicit conversion loses integer precision:
          'unsigned long' to 'int' [-Wshorten-64-to-32]
        name_len = strlen(name);
                 ~ ^~~~~~~~~~~~
    lcCharSet.c:184:23: warning: implicit conversion loses integer precision:
          'unsigned long' to 'int' [-Wshorten-64-to-32]
        ct_sequence_len = strlen(ct_sequence);
                        ~ ^~~~~~~~~~~~~~~~~~~
    lcCharSet.c:198:37: warning: implicit conversion loses integer precision:
         'long' to 'unsigned int' [-Wshorten-64-to-32]
            unsigned int length = colon - charset->name;
                         ~~~~~~   ~~~~~~^~~~~~~~~~~~~~~
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 2e6300905784fa8adfcea019262ea58b3e1ed4ad
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Tue Jan 1 11:41:47 2019 -0800

    Remove no-longer-used name variable in _XGetAtomName
    
    Fixes gcc warning:
    GetAtomNm.c: In function ‘_XGetAtomName’:
    GetAtomNm.c:39:11: warning: unused variable ‘name’ [-Wunused-variable]
         char *name;
               ^~~~
    
    Introduced by commit 336c1e7a505698a8f3bcb6eb96dbbb8ed21ade96
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit f077871c2a12cf098b0c50572e112c6dc5e04de0
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Dec 29 11:39:29 2018 -0800

    Fix out-of-tree builds after commit 8a62e26515e528bb47917ec4a55cc2b492419eeb
    
    In-tree builds found reallocarray.h in $(top_builddir)/src but the
    out-of-tree build didn't find it at all.
    
    Reported-by: Emmanuele Bassi <ebassi@gmail.com> from GNOME continuous integration pipeline
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit ba7f7cc783672784bebc6e69349b55c6c75c1973
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sun Sep 27 18:35:27 2015 -0700

    Convert src/xlibi18n to use reallocarray()
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 336c1e7a505698a8f3bcb6eb96dbbb8ed21ade96
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Sep 26 11:12:47 2015 -0700

    Replace Xmalloc+strcpy pairs with strdup calls
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 258a8ced681dc1bc50396be7439fce23f9807e2a
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sun Jul 19 11:58:50 2015 -0700

    Replace _XkbTypedRealloc & _XkbClearElems with new _XkbResizeArray
    
    Makes resizing & clearing more consistent and gets rid of some weird
    quirks like always subtracting 1 from the size passed to _XkbClearElems
    so it could always add 1 to the size passed in.
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit f94273e2f4284040306b888e5ca0381ee00591af
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sun Jul 19 09:47:29 2015 -0700

    Add some missing allocation failure checks in src/xcms
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 76850471b4a5a6d30f5660234e87ec2772e7b426
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sun Jul 19 09:33:21 2015 -0700

    Convert src/xcms to use reallocarray()
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 8a62e26515e528bb47917ec4a55cc2b492419eeb
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sun Jul 19 09:24:02 2015 -0700

    Convert src/XKB to use reallocarray()
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 6d1dc1f6169ebf0ba71785d461bd98129c65c862
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Thu Jun 4 23:30:43 2015 -0700

    Convert main src directory to use reallocarray()

commit bcf7b5aa06c23aee00af7999b58cb96a8571ac42
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Thu Jun 4 23:18:23 2015 -0700

    Import reallocarray() from OpenBSD
    
    Wrapper for realloc() that checks for overflow when multiplying
    arguments together, so we don't have to add overflow checks to
    every single call.  For documentation on usage, see:
    http://www.openbsd.org/cgi-bin/man.cgi/OpenBSD-current/man3/calloc.3
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 9bdfe9c9af11d77d66e5ff651e82b20e695cb460
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Mon Nov 19 21:26:23 2018 -0800

    Update README for gitlab migration
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit c8bcc19970a2cc4ad337de1338c63a07325eefcd
Author: Albert Astals Cid <aacid@kde.org>
Date:   Fri Nov 9 22:24:52 2018 +0100

    locale.dir: Add ast_ES.UTF-8
    
    With this patch xev properly reports
       XLookupString gives 2 bytes: (c2 b4) "´"
    for the dead_acute key when using the Asturian locale

commit 117bb310b44ce03802c91a70949eb58dcc702a3c
Author: Albert Astals Cid <aacid@kde.org>
Date:   Fri Nov 9 22:18:43 2018 +0100

    compose.dir: Add ast_ES.UTF-8
    
    With this patch one can properly type dead keys like á when using the
    Asturian locale

commit d7e22252d68258a63ca537827c99d0ac0bc4b9d8
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Nov 10 13:30:47 2018 -0800

    Remove documentation of obsolete B16 & B32 tags in specs/libX11
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit f3c978476e0be6813268af494efb7ac507451116
Author: Matt Turner <mattst88@gmail.com>
Date:   Tue Oct 9 10:26:05 2018 -0400

    libX11 1.6.7
    
    Signed-off-by: Matt Turner <mattst88@gmail.com>

commit 823a0f8a820247b6c1e092f679b49cbdc2ea5c95
Author: Michel Dänzer <michel.daenzer@amd.com>
Date:   Fri Sep 28 17:24:17 2018 +0200

    poll_for_event: Allow using xcb_poll_for_queued_event
    
    It avoids reading from the display connection again in cases where that
    was already done.
    
    Suggested-by: Uli Schlachter <psychon@znc.in>
    Reviewed-by: Uli Schlachter <psychon@znc.in>

commit 406afe4b0f1b655c0db19bbc9a0c48da9a46acf5
Author: Michel Dänzer <michel.daenzer@amd.com>
Date:   Tue Sep 25 17:10:58 2018 +0200

    poll_for_response: Call poll_for_event again if xcb_poll_for_reply fails
    
    If xcb_poll_for_reply fails to find a reply, poll_for_response would
    always return NULL. However, xcb_poll_for_reply may have read events
    from the display connection while looking for a reply. In that case,
    returning NULL from poll_for_response is wrong and can result in the
    client hanging, e.g. because it returns to waiting for the display
    connection file descriptor becoming readable after XPending incorrectly
    returned 0 pending events.
    
    The solution is to call poll_for_event again after xcb_poll_for_reply
    returned 0. This will return the first of any events read by
    xcb_poll_for_reply.
    
    Fixes issue #79.
    
    Reported-by: Yuxuan Shui <yshuiv7@gmail.com>
    Bugzilla: https://bugs.freedesktop.org/108008
    Bugzilla: https://bugs.freedesktop.org/107992
    Reviewed-by: Adam Jackson <ajax@redhat.com>

commit d0416863d5bf75af54ce81f6c30d4c1476b5e04f
Author: Bhavi Dhingra <b.dhingra@samsung.com>
Date:   Mon Sep 28 08:33:40 2015 +0000

    XcmsLookupColor: fully initialize XColor structs passed to _XColor_to_XcmsRGB
    
    Fixes https://gitlab.freedesktop.org/xorg/lib/libx11/issues/44
    aka https://bugs.freedesktop.org/show_bug.cgi?id=92154
    
    Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 733f64bfeb311c1d040b2f751bfdef9c9d0f89ef
Author: Matthieu Herrb <matthieu@herrb.eu>
Date:   Tue Aug 21 16:54:50 2018 +0200

    libX11 1.6.6
    
    Signed-off-by: Matthieu Herrb <matthieu@herrb.eu>

commit 173704243fbcbea0b6de2068b4fb403c7408fb54
Author: Matthieu Herrb <matthieu@herrb.eu>
Date:   Tue Aug 21 16:53:40 2018 +0200

    Remove statement with no effect.
    
    Signed-off-by: Matthieu Herrb <matthieu@herrb.eu>

commit e83722768fd5c467ef61fa159e8c6278770b45c2
Author: Tobias Stoeckmann <tobias@stoeckmann.org>
Date:   Fri Jul 27 16:38:00 2018 +0200

    Fixed crash on invalid reply (CVE-2018-14598).
    
    If the server sends a reply in which even the first string would
    overflow the transmitted bytes, list[0] (or flist[0]) will be set to
    NULL and a count of 0 is returned.
    
    If the resulting list is freed with XFreeExtensionList or
    XFreeFontPath later on, the first Xfree call:
    
        Xfree (list[0]-1)
     turns into
        Xfree (NULL-1)
    
    which will most likely trigger a segmentation fault.
    
    I have modified the code to return NULL if the first string would
    overflow, thus protecting the freeing functions later on.
    
    Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org>

commit dbf72805fd9d7b1846fe9a11b46f3994bfc27fea
Author: Tobias Stoeckmann <tobias@stoeckmann.org>
Date:   Fri Jul 27 16:37:17 2018 +0200

    Fixed out of boundary write (CVE-2018-14600).
    
    The length value is interpreted as signed char on many systems
    (depending on default signedness of char), which can lead to an out of
    boundary write up to 128 bytes in front of the allocated storage, but
    limited to NUL byte(s).
    
    Casting the length value to unsigned char fixes the problem and allows
    string values with up to 255 characters.
    
    Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org>

commit b469da1430cdcee06e31c6251b83aede072a1ff0
Author: Tobias Stoeckmann <tobias@stoeckmann.org>
Date:   Fri Jul 27 16:36:34 2018 +0200

    Fixed off-by-one writes (CVE-2018-14599).
    
    The functions XGetFontPath, XListExtensions, and XListFonts are
    vulnerable to an off-by-one override on malicious server responses.
    
    The server replies consist of chunks consisting of a length byte
    followed by actual string, which is not NUL-terminated.
    
    While parsing the response, the length byte is overridden with '\0',
    thus the memory area can be used as storage of C strings later on. To
    be able to NUL-terminate the last string, the buffer is reserved with
    an additional byte of space.
    
    For a boundary check, the variable chend (end of ch) was introduced,
    pointing at the end of the buffer which ch initially points to.
    Unfortunately there is a difference in handling "the end of ch".
    
    While chend points at the first byte that must not be written to,
    the for-loop uses chend as the last byte that can be written to.
    
    Therefore, an off-by-one can occur.
    
    I have refactored the code so chend actually points to the last byte
    that can be written to without an out of boundary access. As it is not
    possible to achieve "ch + length < chend" and "ch + length + 1 > chend"
    with the corrected chend meaning, I removed the inner if-check.
    
    Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org>

commit d81da209fd4d0c2c9ad0596a8078e58864479d0d
Author: Tobias Stoeckmann <tobias@stoeckmann.org>
Date:   Tue Jul 3 22:31:37 2018 +0200

    Validation of server response in XListHosts.
    
    If a server sends an incorrect length in its response, a client is prone
    to perform an out of boundary read while processing the data.
    
    The length field of xHostEntry is used to specify the amount of bytes
    used to represent the address. It is 16 bit, which means that it is not
    possible to perform an arbitrary memory access, but it might be enough
    to read sensitive information, e.g. malloc-related pointers and offsets.
    
    Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org>
    Reviewed-by: Matthieu Herrb <matthieu@herrb.eu>

commit b676e62377483df77bcb6472d26b24f901323fa9
Author: Samuel Thibault <samuel.thibault@ens-lyon.org>
Date:   Wed Jun 13 15:46:58 2018 +0200

    XkbOpenDisplay.3: fix typo
    
    XkbOpenDisplay returns a pointer to Display, not a Display.
    
    Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>

commit 9c5845ff0dc080ff10bd68af4fc40fcd805728ca
Author: Martin Natano <natano@natano.net>
Date:   Sat Oct 8 19:57:50 2016 +0200

    Don't rebuild ks_tables.h if nothing changed.
    
    ks_tables.h is always considered out of date due to the forced rebuild
    of the makekeys util. This means the file is also rebuilt during 'make
    install', which is usually performed as root, which can to lead
    permission problems later on.
    
    Signed-off-by: Martin Natano <natano@natano.net>
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 796f754cba6d75b676a0fc39b97802198fceda4f
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat May 5 14:43:30 2018 -0700

    Change fall through comment in lcDB.c to match gcc's requirements
    
    Needs to match one of the regexps shown under
    https://gcc.gnu.org/onlinedocs/gcc-7.3.0/gcc/Warning-Options.html#index-Wimplicit-fallthrough
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 82ca6308757126fa7ffc6588f1e5d8e3be04251b
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Sat Mar 24 19:45:14 2018 -0700

    Use size_t for buffer sizes in SetHints.c
    
    These variables store values returned from strlen() as a size_t
    and are passed to Xmalloc, which expects a size_t, so lets stop
    converting back and forth to int along the way.
    
    Reported by: Konstantin SKliarov
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
    Reviewed-by: Matthieu Herrb <matthieu@herrb.eu>

commit 50a5a98984097d614227d22a49265e12b172cac7
Author: Bhavi Dhingra <b.dhingra@samsung.com>
Date:   Tue Jul 5 11:37:50 2016 +0530

    Fix possible memory leak in cmsProp.c:140
    
    https://bugs.freedesktop.org/show_bug.cgi?id=96814
    
    Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit a9dafdd57c71473fa3a2ec4887e973e4e9876d83
Author: Michal Srb <msrb@suse.com>
Date:   Thu Mar 15 09:50:58 2018 +0100

    Use flexible array member instead of fake size.
    
    The _XimCacheStruct structure is followed in memory by two strings containing
    fname and encoding. The memory was accessed using the last member of the
    structure `char fname[1]`. That is a lie, prohibits us from using sizeof and
    confuses checkers. Lets declare it properly as a flexible array, so compilers
    don't complain about writing past that array. As bonus we can replace the
    XOffsetOf with regular sizeof.
    
    Fixes GCC8 error:
      In function 'strcpy',
          inlined from '_XimWriteCachedDefaultTree' at imLcIm.c:479:5,
          inlined from '_XimCreateDefaultTree' at imLcIm.c:616:2,
          inlined from '_XimLocalOpenIM' at imLcIm.c:700:5:
      /usr/include/bits/string_fortified.h:90:10: error: '__builtin_strcpy'
      forming offset 2 is out of the bounds [0, 1] [-Werror=array-bounds]
         return __builtin___strcpy_chk (__dest, __src, __bos (__dest));
    
    Caused by this line seemingly writing past the fname[1] array:
      imLcIm.c:479:  strcpy (m->fname+strlen(name)+1, encoding);
    
    Reviewed-by: Keith Packard <keithp@keithp.com>
    Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>

commit 34f4464f69a4d6ff0d1042500a62f9a5ed7f3647
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Tue Mar 6 11:42:27 2018 -0800

    If XGetImage fails to create image, don't dereference it to bounds check
    
    Reported by gcc 7.3:
    
    GetImage.c:110:25: warning: potential null pointer dereference [-Wnull-dereference]
      if (planes < 1 || image->height < 1 || image->bytes_per_line < 1 ||
                        ~~~~~^~~~~~~~
    
    Introduced by 8ea762f94f4c942d898fdeb590a1630c83235c17 in Xlib 1.6.4
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
    Reviewed-by: Emil Velikov <emil.velikov@collabora.com>

commit e835a9dcc3362b5e92893be756dd7ae361e64ced
Author: wharms <wharms@bfs.de>
Date:   Sun Sep 3 14:17:45 2017 +0200

    silence gcc warning assignment discards 'const' qualifier from pointer target type

commit 36a1ac0253fea82ff79cc52ba56c5691cfd07a3b
Author: wharms <wharms@bfs.de>
Date:   Sun Aug 20 21:51:57 2017 +0200

    remove empty line

commit e02dfe54f32b4165351d2712a9d2e0584906a3ce
Author: wharms <wharms@bfs.de>
Date:   Sun Aug 20 21:50:33 2017 +0200

    add _X_UNUSED to avoid unused variable warnings

commit 2911c39cecd63ed3747072a5eeeb9eedffc881e9
Author: walter harms <wharms@bfs.de>
Date:   Sat Jun 4 17:19:59 2016 +0200

    Fixes: warning: variable 'req' set but not,used
    
    Fixes: warning: variable 'req' set but not used [-Wunused-but-set-variable]
           by marking req _X_UNUSED
            Solution was discussed on xorg-devel ML
           Peter Hutter, Alan Coopersmith
            Re: [PATCH libX11 3/5] fix: warning: pointer targets in passing argument 2 of '_XSend' differ in signedness [-Wpointer-sign]
    
    Signed-off-by: harms wharms@bfs.de

commit bf82ec0402479fd8399d69e7d62fc17d7956699a
Author: walter harms <wharms@bfs.de>
Date:   Sat Jun 4 17:22:07 2016 +0200

    mark _XDefaultIOError as no_return
    
    mark _XDefaultIOError as no_return. No one comes back from exit() ...
    
    Signed-off-by: harms wharms@bfs.de

commit 9abe8380074edea3ac4e72466ec47e921ca05e47
Author: walter harms <wharms@bfs.de>
Date:   Sat Jun 4 17:21:52 2016 +0200

    no need to check XFree arguments
    
    You can save a bit of code. The is no need to check XFree arguments bring  free_fontdataOM in line with other free function and check for NULL arg
    
    Signed-off-by: harms wharms@bfs.de

commit 433477fcb7e07d0c26a22ba78aae88827ed1f440
Author: walter harms <wharms@bfs.de>
Date:   Tue Apr 26 16:32:20 2016 +0200

    fix memleak in error path
    
    free all mem on error
    Signed-off-by: walter harms <wharms@bfs.de>

commit ed9f0d34abc645eee56e21863f23acb4d0bb8e9a
Author: walter harms <wharms@bfs.de>
Date:   Tue Apr 26 17:58:16 2016 +0200

    fix memleak in error path
    
    V2: remove unneeded NULL (reported by eric.engestrom@imgtec.com)
    
    fix mem leak in error path
    Signed-off-by: walter harms <wharms@bfs.de>

commit 7c78fc57693afa94cf26170f0f6276e3b7374ed0
Author: walter harms <wharms@bfs.de>
Date:   Tue Apr 26 16:34:11 2016 +0200

    no need to check args for Xfree()
    
    simplify code
    
    Signed-off-by: walter harms <wharms@bfs.de>

commit c1c14af441ae73d1a8e67a971fafcf967e45ac48
Author: walter harms <wharms@bfs.de>
Date:   Tue Apr 26 16:23:46 2016 +0200

    remove stray extern
    
    remove stray extern
    
    Signed-off-by: walter harms <wharms@bfs.de>

commit 714921f041a245dc5f37a689268b584226a2ccb9
Author: walter harms <wharms@bfs.de>
Date:   Mon Apr 11 18:26:52 2016 +0200

    no need to check argument for _XkbFree()
    
    simplify code by removing unneeded checks
    
    Signed-off-by: walter harms <wharms@bfs.de>

commit d02c2466f65063a03c97dbcee05071c12a3676e6
Author: walter harms <wharms@bfs.de>
Date:   Mon Apr 11 18:22:38 2016 +0200

    fix more shadow warning
    
    Signed-off-by: walter harms <wharms@bfs.de>

commit 0355c3926d5372f9762f235071dbd94a89bbbdad
Author: walter harms <wharms@bfs.de>
Date:   Thu Mar 31 19:16:33 2016 +0200

    fix shadow char_size
    
    Signed-off-by: walter harms <wharms@bfs.de>

commit 916dffadf052135df3398651be873c353da629e1
Author: walter harms <wharms@bfs.de>
Date:   Thu Mar 31 19:14:32 2016 +0200

    remove argument check for free() adjust one inden
    
    Signed-off-by: walter harms <wharms@bfs.de>

commit 6ec901ebca3fea6a762e22090dc35b1b90911133
Author: walter harms <wharms@bfs.de>
Date:   Thu Mar 31 19:12:17 2016 +0200

    _XIOError(dpy); will never return so remore dead
    
    Signed-off-by: walter harms <wharms@bfs.de>

commit 83107a677b2ed458e4d62ea4a601e8181d3683d8
Author: walter harms <wharms@bfs.de>
Date:   Thu Mar 31 19:10:49 2016 +0200

    fix shadow warning
    
    Signed-off-by: walter harms <wharms@bfs.de>

commit 4fe66b1c5112b07bd09e28bbc021911d08a9621f
Author: Ryan C. Gordon <icculus@icculus.org>
Date:   Wed Aug 2 02:41:03 2017 -0400

    Valgrind fix for XStoreColor and XStoreColors.
    
    If the "pad" field isn't set, Valgrind will report it as uninitialized
    memory accesses when the struct is copied into the Display's send buffer.
    
    In practice, this is (probably) harmless, but Valgrind is correct in
    believing it's a bug.
    
    https://bugs.freedesktop.org/attachment.cgi?id=133189
    
    Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit 7d2010fec25c2f52b873ad0572479eb43128b038
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Fri Apr 7 00:13:03 2017 -0700

    Improve table formatting in XkbChangeControls & XkbKeyNumGroups man pages
    
    Includes fix for Solaris Bug 24564279: "XkbKeyNumGroups.3x11 man page
    contains some malformed text" caused by extra whitespace after .TE macros
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>

commit b856d5d929047d1ea169814d56e43784ea404c83
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Thu Mar 16 00:05:49 2017 -0700

    Clarify state parameter to XkbSetNamedDeviceIndicator
    
    Checking a Bool to see if it's NULL does not work well in C.
    Also reported in https://bugs.freedesktop.org/show_bug.cgi?id=251
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
    Reviewed-by: Adam Jackson <ajax@redhat.com>

commit c6dadd4cebd994aafb37a58b3adbaa82507c2d18
Author: Alan Coopersmith <alan.coopersmith@oracle.com>
Date:   Wed Mar 15 23:50:26 2017 -0700

    Make Xkb{Get,Set}NamedIndicator spec & manpages match code
    
    The XKB Library spec and the man pages for XkbGetNamedIndicator &
    XkbSetNamedIndicator included a device_spec argument neither function
    takes, and do not include the XkbGetNamedDeviceIndicator &
    XkbSetNamedDeviceIndicator variants that do take it (along with two
    other arguments).
    
    This updates them to match the interfaces the code has provided for
    decades.
    
    This has been reported multiple times, so this fixes:
    https://bugs.freedesktop.org/show_bug.cgi?id=251
    https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=729812
    Sun Bug 4528016 XkbSetNamedIndicator & XkbGetNamedIndicator man pages are wrong
