commit b5be61cc06088bb07f488f9baf7d447ff47b37c1
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2018-04-29 19:00:06 +0300

    Bump version and soname for 5.2.4.

 src/liblzma/Makefile.am        | 2 +-
 src/liblzma/api/lzma/version.h | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit c47fa6d06745bb2e99866e76b81ac7a9c5a8bfec
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2018-04-29 18:48:00 +0300

    extra/scanlzma: Fix compiler warnings.

 extra/scanlzma/scanlzma.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 7b350fe21aa4fd6495a3b6188a40e3f1ae7c0edf
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2018-04-29 18:15:37 +0300

    Add NEWS for 5.2.4.

 NEWS | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

commit 5801591162a280aa52d156dfde42c531ec7fd8b6
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2018-02-06 19:36:30 +0200

    Update THANKS.

 THANKS | 2 ++
 1 file changed, 2 insertions(+)

commit c4a616f4536146f8906e1b4412eefeec07b28fae
Author: Ben Boeckel <mathstuf@gmail.com>
Date:   2018-01-29 13:58:18 -0500

    nothrow: use noexcept for C++11 and newer
    
    In C++11, the `throw()` specifier is deprecated and `noexcept` is
    preffered instead.

 src/liblzma/api/lzma.h | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 0b8947782ff3c5ef830a7f85412e44dcf3cdeb77
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2018-02-06 18:02:48 +0200

    liblzma: Remove incorrect #ifdef from range_common.h.
    
    In most cases it was harmless but it could affect some
    custom build systems.
    
    Thanks to Pippijn van Steenhoven.

 src/liblzma/rangecoder/range_common.h | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit 48f3b9f73ffea7f55d5678997aba0e79d2e82168
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2018-01-10 22:10:39 +0200

    Update THANKS.

 THANKS | 1 +
 1 file changed, 1 insertion(+)

commit a3ce3e902342be37c626a561ce3d9ffcf27d0f94
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2018-01-10 21:54:27 +0200

    tuklib_integer: New Intel C compiler needs immintrin.h.
    
    Thanks to Melanie Blower (Intel) for the patch.

 src/common/tuklib_integer.h | 11 +++++++++++
 1 file changed, 11 insertions(+)

commit 4505ca483985f88c6923c05a43b4327feaab83b1
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2017-09-24 20:04:24 +0300

    Update THANKS.

 THANKS | 1 +
 1 file changed, 1 insertion(+)

commit 1ef3cc226e3ce173575c218238b71a4eecabc470
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2017-09-16 20:36:20 +0300

    Windows: Fix paths in VS project files.
    
    Some paths use slashes instead of backslashes as directory
    separators... now it should work (I tested VS2013 version).

 windows/vs2013/liblzma.vcxproj     | 12 ++++++------
 windows/vs2013/liblzma_dll.vcxproj | 24 ++++++++++++------------
 windows/vs2017/liblzma.vcxproj     | 12 ++++++------
 windows/vs2017/liblzma_dll.vcxproj | 24 ++++++++++++------------
 4 files changed, 36 insertions(+), 36 deletions(-)

commit e775d2a8189d24f60470e6e49d8af881df3a1680
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2017-09-16 12:54:23 +0300

    Windows: Add project files for VS2017.
    
    These files match the v5.2 branch (no file info decoder).

 windows/vs2017/config.h            | 148 ++++++++++++++
 windows/vs2017/liblzma.vcxproj     | 355 ++++++++++++++++++++++++++++++++++
 windows/vs2017/liblzma_dll.vcxproj | 384 +++++++++++++++++++++++++++++++++++++
 windows/vs2017/xz_win.sln          |  48 +++++
 4 files changed, 935 insertions(+)

commit 10e02e0fbb6e2173f8b41f6e39b7b570f47dd74d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2017-09-16 12:39:43 +0300

    Windows: Move VS2013 files into windows/vs2013 directory.

 windows/{ => vs2013}/config.h            |   0
 windows/{ => vs2013}/liblzma.vcxproj     | 278 +++++++++++++++---------------
 windows/{ => vs2013}/liblzma_dll.vcxproj | 280 +++++++++++++++----------------
 windows/{ => vs2013}/xz_win.sln          |   0
 4 files changed, 279 insertions(+), 279 deletions(-)

commit 06eebd4543196ded36fa9b8b9544195b38b24ef2
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2017-08-14 20:08:33 +0300

    Fix or hide warnings from GCC 7's -Wimplicit-fallthrough.

 src/liblzma/lzma/lzma_decoder.c | 6 ++++++
 src/xz/list.c                   | 2 ++
 2 files changed, 8 insertions(+)

commit ea4ea1dffafebaa8b2770bf3eca46900e4dd22dc
Author: Alexey Tourbin <alexey.tourbin@gmail.com>
Date:   2017-05-16 23:56:35 +0300

    Docs: Fix a typo in a comment in doc/examples/02_decompress.c.

 doc/examples/02_decompress.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit eb2ef4c79bf405ea0d215f3b1df3d0eaf5e1d27b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2017-05-23 18:34:43 +0300

    xz: Fix "xz --list --robot missing_or_bad_file.xz".
    
    It ended up printing an uninitialized char-array when trying to
    print the check names (column 7) on the "totals" line.
    
    This also changes the column 12 (minimum xz version) to
    50000002 (xz 5.0.0) instead of 0 when there are no valid
    input files.
    
    Thanks to kidmin for the bug report.

 src/xz/list.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit 3ea5dbd9b0d79048e336e40cef3b6d814fb74e13
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2017-04-24 19:48:47 +0300

    Build: Omit pre-5.0.0 entries from the generated ChangeLog.
    
    It makes ChangeLog significantly smaller.

 Makefile.am | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit bae24675936df99064de1502593c006bd902594b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2017-04-24 19:30:22 +0300

    Update the Git repository URL to HTTPS in ChangeLog.

 ChangeLog | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 70f479211973b5361f4d7cb08ba5be69b4266e7a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2017-04-19 22:17:35 +0300

    Update the home page URLs to HTTPS.

 COPYING                     | 2 +-
 README                      | 2 +-
 configure.ac                | 2 +-
 doc/faq.txt                 | 4 ++--
 dos/config.h                | 2 +-
 src/common/common_w32res.rc | 2 +-
 src/xz/xz.1                 | 6 +++---
 src/xzdec/xzdec.1           | 4 ++--
 windows/README-Windows.txt  | 2 +-
 windows/config.h            | 2 +-
 10 files changed, 14 insertions(+), 14 deletions(-)

commit 2a4b2fa75d06a097261a02ecd3cf2b6d449bf754
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2017-03-30 22:01:54 +0300

    xz: Use POSIX_FADV_RANDOM for in "xz --list" mode.
    
    xz --list is random access so POSIX_FADV_SEQUENTIAL was clearly
    wrong.

 src/xz/file_io.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

commit eb25743ade39170cffd9566a1aae272098cce216
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2017-03-30 19:47:45 +0300

    liblzma: Fix lzma_memlimit_set(strm, 0).
    
    The 0 got treated specially in a buggy way and as a result
    the function did nothing. The API doc said that 0 was supposed
    to return LZMA_PROG_ERROR but it didn't.
    
    Now 0 is treated as if 1 had been specified. This is done because
    0 is already used to indicate an error from lzma_memlimit_get()
    and lzma_memusage().
    
    In addition, lzma_memlimit_set() no longer checks that the new
    limit is at least LZMA_MEMUSAGE_BASE. It's counter-productive
    for the Index decoder and was actually needed only by the
    auto decoder. Auto decoder has now been modified to check for
    LZMA_MEMUSAGE_BASE.

 src/liblzma/api/lzma/base.h       | 7 ++++++-
 src/liblzma/common/auto_decoder.c | 3 +++
 src/liblzma/common/common.c       | 6 ++++--
 3 files changed, 13 insertions(+), 3 deletions(-)

commit ef36c6362f3f3853f21b8a6359bcd06576ebf207
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2017-03-30 19:16:55 +0300

    liblzma: Similar memlimit fix for stream_, alone_, and auto_decoder.

 src/liblzma/api/lzma/container.h    | 21 +++++++++++++++++----
 src/liblzma/common/alone_decoder.c  |  5 +----
 src/liblzma/common/auto_decoder.c   |  5 +----
 src/liblzma/common/stream_decoder.c |  5 +----
 4 files changed, 20 insertions(+), 16 deletions(-)

commit 57616032650f03840480b696d7878acdd2065521
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2017-03-30 18:58:18 +0300

    liblzma: Fix handling of memlimit == 0 in lzma_index_decoder().
    
    It returned LZMA_PROG_ERROR, which was done to avoid zero as
    the limit (because it's a special value elsewhere), but using
    LZMA_PROG_ERROR is simply inconvenient and can cause bugs.
    
    The fix/workaround is to treat 0 as if it were 1 byte. It's
    effectively the same thing. The only weird consequence is
    that then lzma_memlimit_get() will return 1 even when 0 was
    specified as the limit.
    
    This fixes a very rare corner case in xz --list where a specific
    memory usage limit and a multi-stream file could print the
    error message "Internal error (bug)" instead of saying that
    the memory usage limit is too low.

 src/liblzma/api/lzma/index.h       | 18 +++++++++++-------
 src/liblzma/common/index_decoder.c |  4 ++--
 2 files changed, 13 insertions(+), 9 deletions(-)

commit 3d566cd519017eee1a400e7961ff14058dfaf33c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2016-12-30 13:26:36 +0200

    Bump version and soname for 5.2.3.

 src/liblzma/Makefile.am        | 2 +-
 src/liblzma/api/lzma/version.h | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 053e624fe33795e779ff736f16ce44a129c829b5
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2016-12-30 13:25:10 +0200

    Update NEWS for 5.2.3.

 NEWS | 39 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 39 insertions(+)

commit cae412b2b77d7fd88d187ed7659331709311f80d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-04-01 14:45:25 +0300

    xz: Fix the Capsicum rights on user_abort_pipe.

 src/xz/file_io.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 9ccbae41000572193b9a09e7102f9e84dc6d96de
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2016-12-28 21:05:22 +0200

    Mention potential sandboxing bugs in INSTALL.

 INSTALL | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit e013a337d3de77cce24360dffe956ea2339489b6
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2016-11-21 20:24:50 +0200

    liblzma: Avoid multiple definitions of lzma_coder structures.
    
    Only one definition was visible in a translation unit.
    It avoided a few casts and temp variables but seems that
    this hack doesn't work with link-time optimizations in compilers
    as it's not C99/C11 compliant.
    
    Fixes:
    http://www.mail-archive.com/xz-devel@tukaani.org/msg00279.html

 src/liblzma/common/alone_decoder.c             |  44 +++++----
 src/liblzma/common/alone_encoder.c             |  34 ++++---
 src/liblzma/common/auto_decoder.c              |  35 ++++---
 src/liblzma/common/block_decoder.c             |  41 ++++----
 src/liblzma/common/block_encoder.c             |  40 ++++----
 src/liblzma/common/common.h                    |  18 ++--
 src/liblzma/common/index_decoder.c             |  33 ++++---
 src/liblzma/common/index_encoder.c             |  16 ++--
 src/liblzma/common/stream_decoder.c            |  50 +++++-----
 src/liblzma/common/stream_encoder.c            |  56 ++++++-----
 src/liblzma/common/stream_encoder_mt.c         | 124 ++++++++++++++-----------
 src/liblzma/delta/delta_common.c               |  25 ++---
 src/liblzma/delta/delta_decoder.c              |   6 +-
 src/liblzma/delta/delta_encoder.c              |  12 ++-
 src/liblzma/delta/delta_private.h              |   4 +-
 src/liblzma/lz/lz_decoder.c                    |  60 ++++++------
 src/liblzma/lz/lz_decoder.h                    |  13 ++-
 src/liblzma/lz/lz_encoder.c                    |  57 +++++++-----
 src/liblzma/lz/lz_encoder.h                    |   9 +-
 src/liblzma/lzma/lzma2_decoder.c               |  32 ++++---
 src/liblzma/lzma/lzma2_encoder.c               |  51 +++++-----
 src/liblzma/lzma/lzma_decoder.c                |  27 +++---
 src/liblzma/lzma/lzma_encoder.c                |  29 +++---
 src/liblzma/lzma/lzma_encoder.h                |   9 +-
 src/liblzma/lzma/lzma_encoder_optimum_fast.c   |   3 +-
 src/liblzma/lzma/lzma_encoder_optimum_normal.c |  23 ++---
 src/liblzma/lzma/lzma_encoder_private.h        |   6 +-
 src/liblzma/simple/arm.c                       |   2 +-
 src/liblzma/simple/armthumb.c                  |   2 +-
 src/liblzma/simple/ia64.c                      |   2 +-
 src/liblzma/simple/powerpc.c                   |   2 +-
 src/liblzma/simple/simple_coder.c              |  61 ++++++------
 src/liblzma/simple/simple_private.h            |  12 +--
 src/liblzma/simple/sparc.c                     |   2 +-
 src/liblzma/simple/x86.c                       |  15 +--
 35 files changed, 532 insertions(+), 423 deletions(-)

commit 8e0f1af3dcaec00a3879cce8ad7441edc6359d1c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2016-12-26 20:50:25 +0200

    Document --enable-sandbox configure option in INSTALL.

 INSTALL | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

commit ce2542d220de06acd618fd9f5c0a6683029fb4eb
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-03-31 22:19:34 +0300

    xz: Add support for sandboxing with Capsicum (disabled by default).
    
    In the v5.2 branch this feature is considered experimental
    and thus disabled by default.
    
    The sandboxing is used conditionally as described in main.c.
    This isn't optimal but it was much easier to implement than
    a full sandboxing solution and it still covers the most common
    use cases where xz is writing to standard output. This should
    have practically no effect on performance even with small files
    as fork() isn't needed.
    
    C and locale libraries can open files as needed. This has been
    fine in the past, but it's a problem with things like Capsicum.
    io_sandbox_enter() tries to ensure that various locale-related
    files have been loaded before cap_enter() is called, but it's
    possible that there are other similar problems which haven't
    been seen yet.
    
    Currently Capsicum is available on FreeBSD 10 and later
    and there is a port to Linux too.
    
    Thanks to Loganaden Velvindron for help.

 configure.ac       | 41 +++++++++++++++++++++++++++
 src/xz/Makefile.am |  2 +-
 src/xz/file_io.c   | 81 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/xz/file_io.h   |  6 ++++
 src/xz/main.c      | 18 ++++++++++++
 src/xz/private.h   |  4 +++
 6 files changed, 151 insertions(+), 1 deletion(-)

commit 3ca1d5e6320111043e19434da881065fadafa0e4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-03-31 21:12:30 +0300

    Fix bugs and otherwise improve ax_check_capsicum.m4.
    
    AU_ALIAS was removed because the new version is incompatible
    with the old version.
    
    It no longer checks for <sys/capability.h> separately.
    It's enough to test for it as part of AC_CHECK_DECL.
    The defines HAVE_CAPSICUM_SYS_CAPSICUM_H and
    HAVE_CAPSICUM_SYS_CAPABILITY_H were removed as unneeded.
    HAVE_SYS_CAPSICUM_H from AC_CHECK_HEADERS is enough.
    
    It no longer does a useless search for the Capsicum library
    if the header wasn't found.
    
    Fixed a bug in ACTION-IF-FOUND (the first argument). Specifying
    the argument omitted the default action but the given action
    wasn't used instead.
    
    AC_DEFINE([HAVE_CAPSICUM]) is now always called when Capsicum
    support is found. Previously it was part of the default
    ACTION-IF-FOUND which a custom action would override. Now
    the default action only prepends ${CAPSICUM_LIB} to LIBS.
    
    The documentation was updated.
    
    Since there as no serial number, "#serial 2" was added.

 m4/ax_check_capsicum.m4 | 103 ++++++++++++++++++++++++------------------------
 1 file changed, 51 insertions(+), 52 deletions(-)

commit 5f3a742b64197fe8bedb6f05fc6ce5d177d11145
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-03-31 19:20:24 +0300

    Add m4/ax_check_capsicum.m4 for detecting Capsicum support.
    
    The file was loaded from this web page:
    https://github.com/google/capsicum-test/blob/dev/autoconf/m4/ax_check_capsicum.m4
    
    Thanks to Loganaden Velvindron for pointing it out for me.

 m4/ax_check_capsicum.m4 | 86 +++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 86 insertions(+)

commit d74377e62b4c649e40294dd441de72c0f092e67c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-10-12 20:29:09 +0300

    liblzma: Fix a memory leak in error path of lzma_index_dup().
    
    lzma_index_dup() calls index_dup_stream() which, in case of
    an error, calls index_stream_end() to free memory allocated
    by index_stream_init(). However, it illogically didn't
    actually free the memory. To make it logical, the tree
    handling code was modified a bit in addition to changing
    index_stream_end().
    
    Thanks to Evan Nemerson for the bug report.

 src/liblzma/common/index.c | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit f580732216dcf971f3f006fe8e01cd4979e1d964
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2016-10-24 18:53:25 +0300

    Update THANKS.

 THANKS | 1 +
 1 file changed, 1 insertion(+)

commit 88d7a7fd153bf1355cdf798ffdac7443d0169afc
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2016-10-24 18:51:36 +0300

    tuklib_cpucores: Add support for sched_getaffinity().
    
    It's available in glibc (GNU/Linux, GNU/kFreeBSD). It's better
    than sysconf(_SC_NPROCESSORS_ONLN) because sched_getaffinity()
    gives the number of cores available to the process instead of
    the total number of cores online.
    
    As a side effect, this commit fixes a bug on GNU/kFreeBSD where
    configure would detect the FreeBSD-specific cpuset_getaffinity()
    but it wouldn't actually work because on GNU/kFreeBSD it requires
    using -lfreebsd-glue when linking. Now the glibc-specific function
    will be used instead.
    
    Thanks to Sebastian Andrzej Siewior for the original patch
    and testing.

 m4/tuklib_cpucores.m4        | 30 +++++++++++++++++++++++++++++-
 src/common/tuklib_cpucores.c |  9 +++++++++
 2 files changed, 38 insertions(+), 1 deletion(-)

commit 51baf684376903dbeddd840582bfdf9fa91b311b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2016-06-30 20:27:36 +0300

    xz: Fix copying of timestamps on Windows.
    
    xz used to call utime() on Windows, but its result gets lost
    on close(). Using _futime() seems to work.
    
    Thanks to Martok for reporting the bug:
    http://www.mail-archive.com/xz-devel@tukaani.org/msg00261.html

 configure.ac     |  2 +-
 src/xz/file_io.c | 18 ++++++++++++++++++
 2 files changed, 19 insertions(+), 1 deletion(-)

commit 1ddc479851139d6e8202e5835421bfe6578d9e07
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2016-06-16 22:46:02 +0300

    xz: Silence warnings from -Wlogical-op.
    
    Thanks to Evan Nemerson.

 src/xz/file_io.c | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

commit be647ff5ed5a1c244a65722af6ce250259f3b14a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2016-04-10 20:55:49 +0300

    Build: Fix = to += for xz_SOURCES in src/xz/Makefile.am.
    
    Thanks to Christian Kujau.

 src/xz/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit fb6d50c15343831f35305982cefa82053099191d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2016-04-10 20:54:17 +0300

    Build: Bump GNU Gettext version requirement to 0.19.
    
    It silences a few warnings and most people probably have
    0.19 even on stable distributions.
    
    Thanks to Christian Kujau.

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 74f8dad9f912a2993768d93d108ea2b0b2c196e0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2016-03-13 20:21:49 +0200

    liblzma: Disable external SHA-256 by default.
    
    This is the sane thing to do. The conflict with OpenSSL
    on some OSes and especially that the OS-provided versions
    can be significantly slower makes it clear that it was
    a mistake to have the external SHA-256 support enabled by
    default.
    
    Those who want it can now pass --enable-external-sha256 to
    configure. INSTALL was updated with notes about OSes where
    this can be a bad idea.
    
    The SHA-256 detection code in configure.ac had some bugs that
    could lead to a build failure in some situations. These were
    fixed, although it doesn't matter that much now that the
    external SHA-256 is disabled by default.
    
    MINIX >= 3.2.0 uses NetBSD's libc and thus has SHA256_Init
    in libc instead of libutil. Support for the libutil version
    was removed.

 INSTALL                   | 36 ++++++++++++++++++++++
 configure.ac              | 76 +++++++++++++++++++++++------------------------
 src/liblzma/check/check.h | 16 ++++------
 3 files changed, 79 insertions(+), 49 deletions(-)

commit ea7f6ff04cb5bb1498088eb09960a4c3f13dfe39
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2016-03-10 20:27:05 +0200

    Update THANKS.

 THANKS | 1 +
 1 file changed, 1 insertion(+)

commit d0e018016b311232e82d9a98dc68f1e3dabce794
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2016-03-10 20:26:49 +0200

    Build: Avoid SHA256_Init on FreeBSD and MINIX 3.
    
    On FreeBSD 10 and older, SHA256_Init from libmd conflicts
    with libcrypto from OpenSSL. The OpenSSL version has
    different sizeof(SHA256_CTX) and it can cause weird
    problems if wrong SHA256_Init gets used.
    
    Looking at the source, MINIX 3 seems to have a similar issue but
    I'm not sure. To be safe, I disabled SHA256_Init on MINIX 3 too.
    
    NetBSD has SHA256_Init in libc and they had a similar problem,
    but they already fixed it in 2009.
    
    Thanks to Jim Wilcoxson for the bug report that helped
    in finding the problem.

 configure.ac | 27 +++++++++++++++++++++------
 1 file changed, 21 insertions(+), 6 deletions(-)

commit 5daae123915f32a4ed6dc948b831533c2d1beec3
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-11-08 20:16:10 +0200

    tuklib_physmem: Hopefully silence a warning on Windows.

 src/common/tuklib_physmem.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 491acc406e098167ccb7fce0728b94c2f32cff9f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-11-04 23:17:43 +0200

    Update THANKS.

 THANKS | 1 +
 1 file changed, 1 insertion(+)

commit 8173ff8790ad3502d04e1c07d014cb84a3b8187b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-11-04 23:14:00 +0200

    liblzma: Make Valgrind happier with optimized (gcc -O2) liblzma.
    
    When optimizing, GCC can reorder code so that an uninitialized
    value gets used in a comparison, which makes Valgrind unhappy.
    It doesn't happen when compiled with -O0, which I tend to use
    when running Valgrind.
    
    Thanks to Rich Prohaska. I remember this being mentioned long
    ago by someone else but nothing was done back then.

 src/liblzma/lz/lz_encoder.c | 4 ++++
 1 file changed, 4 insertions(+)

commit 013de2b5ab8094d2c82a2771f3d143eeb656eda9
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-11-03 20:55:45 +0200

    liblzma: Rename lzma_presets.c back to lzma_encoder_presets.c.
    
    It would be too annoying to update other build systems
    just because of this.

 src/liblzma/lzma/Makefile.inc                               | 2 +-
 src/liblzma/lzma/{lzma_presets.c => lzma_encoder_presets.c} | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit a322f70ad96de88968c2c36e6a36bc08ae30bd20
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-11-03 20:47:07 +0200

    Build: Disable xzdec, lzmadec, and lzmainfo when they cannot be built.
    
    They all need decoder support and if that isn't available,
    there's no point trying to build them.

 configure.ac | 3 +++
 1 file changed, 3 insertions(+)

commit 8ea49606cf6427e32319de7693eca9e43f1c8ad6
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-11-03 20:35:19 +0200

    Build: Simplify $enable_{encoders,decoders} usage a bit.

 configure.ac | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit 42131a25e52bfe400acfa7df93469a96bb78bb78
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-11-03 20:31:31 +0200

    Windows/MSVC: Update config.h.

 windows/config.h | 6 ++++++
 1 file changed, 6 insertions(+)

commit e9184e87cc989d14c7413e6adb3eca98f6ae0290
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-11-03 20:29:58 +0200

    DOS: Update config.h.

 dos/config.h | 6 ++++++
 1 file changed, 6 insertions(+)

commit 2296778f3c9a1e3a8699973b09dd3610b8baa402
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-11-03 20:29:33 +0200

    xz: Make xz buildable even when encoders or decoders are disabled.
    
    The patch is quite long but it's mostly about adding new #ifdefs
    to omit code when encoders or decoders have been disabled.
    
    This adds two new #defines to config.h: HAVE_ENCODERS and
    HAVE_DECODERS.

 configure.ac       |  4 ++++
 src/xz/Makefile.am |  8 ++++++--
 src/xz/args.c      | 16 ++++++++++++++++
 src/xz/coder.c     | 33 +++++++++++++++++++++++++--------
 src/xz/main.c      |  9 +++++++--
 src/xz/private.h   |  5 ++++-
 6 files changed, 62 insertions(+), 13 deletions(-)

commit 97a3109281e475d9cf1b5095237d672fa0ad25e5
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-11-03 18:06:40 +0200

    Build: Build LZMA1/2 presets also when only decoder is wanted.
    
    People shouldn't rely on the presets when decoding raw streams,
    but xz uses the presets as the starting point for raw decoder
    options anyway.
    
    lzma_encocder_presets.c was renamed to lzma_presets.c to
    make it clear it's not used solely by the encoder code.

 src/liblzma/lzma/Makefile.inc                               | 6 +++++-
 src/liblzma/lzma/{lzma_encoder_presets.c => lzma_presets.c} | 3 ++-
 2 files changed, 7 insertions(+), 2 deletions(-)

commit dc6b78d7f0f6fe43e9d4215146e8581feb8090e7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-11-03 17:54:48 +0200

    Build: Fix configure to handle LZMA1 dependency with LZMA2.
    
    Now it gives an error if LZMA1 encoder/decoder is missing
    when LZMA2 encoder/decoder was requested. Even better would
    be LZMA2 implicitly enabling LZMA1 but it would need more code.

 configure.ac | 5 -----
 1 file changed, 5 deletions(-)

commit 46d76c9cd3cb26a31f5ae6c3a8bbcf38e6da1add
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-11-03 17:41:54 +0200

    Build: Don't omit lzma_cputhreads() unless using --disable-threads.
    
    Previously it was omitted if encoders were disabled
    with --disable-encoders. It didn't make sense and
    it also broke the build.

 src/liblzma/common/Makefile.inc | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 16d68f874d89f1e4a1919786a35bbaef7d71a077
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-11-02 18:16:51 +0200

    liblzma: Fix a build failure related to external SHA-256 support.
    
    If an appropriate header and structure were found by configure,
    but a library with a usable SHA-256 functions wasn't, the build
    failed.

 src/liblzma/check/check.h | 32 +++++++++++++++++++++++---------
 1 file changed, 23 insertions(+), 9 deletions(-)

commit d9311647fc1ab512a3394596221ab8039c00af6b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-11-02 15:19:10 +0200

    xz: Always close the file before trying to delete it.
    
    unlink() can return EBUSY in errno for open files on some
    operating systems and file systems.

 src/xz/file_io.c | 25 ++++++++++++-------------
 1 file changed, 12 insertions(+), 13 deletions(-)

commit f59c4183f3c9066626ce45dc3db4642fa603fa21
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-10-12 21:08:42 +0300

    Update THANKS.

 THANKS | 1 +
 1 file changed, 1 insertion(+)

commit 35f189673e280c12e4c5129f9f97e54eef3bbc04
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-10-12 21:07:41 +0300

    Tests: Add tests for the two bugs fixed in index.c.

 tests/test_index.c | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

commit e10bfdb0fcaff12f3a6dadee51e0a022aadccb51
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-10-12 20:45:15 +0300

    liblzma: Fix lzma_index_dup() for empty Streams.
    
    Stream Flags and Stream Padding weren't copied from
    empty Streams.

 src/liblzma/common/index.c | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

commit 06f434bd8980f25ca23232eb7bb7df7e37dc8448
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-10-12 20:31:44 +0300

    liblzma: Add a note to index.c for those using static analyzers.

 src/liblzma/common/index.c | 3 +++
 1 file changed, 3 insertions(+)

commit 9815cdf6987ef91a85493bfcfd1ce2aaf3b47a0a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-09-29 13:59:35 +0300

    Bump version and soname for 5.2.2.

 src/liblzma/Makefile.am        | 2 +-
 src/liblzma/api/lzma/version.h | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit cbe0cec8476bdd0416c7ca9bc83895c9bea1cf78
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-09-29 13:57:28 +0300

    Update NEWS for 5.2.2.

 NEWS | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

commit 49427ce7eececdd18bbd35dab23c81910d083e1c
Author: Andre Noll <maan@tuebingen.mpg.de>
Date:   2015-05-28 15:50:00 +0200

    Fix typo in German translation.
    
    As pointed out by Robert Pollak, there's a typo in the German
    translation of the compression preset option (-0 ... -9) help text.
    "The compressor" translates to "der Komprimierer", and the genitive
    form is "des Komprimierers". The old word makes no sense at all.

 po/de.po | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 608d6f06c940e7f28c25de005e8b99bdff42d27c
Author: Hauke Henningsen <sqrt@entless.org>
Date:   2015-08-17 04:59:54 +0200

    Update German translation, mostly wrt orthography
    
    Provide an update of the German translation.
    * A lot of compound words were previously written with spaces, while
      German orthography is relatively clear in that the components
      should not be separated.
    * When referring to the actual process of (de)compression rather than the
      concept, replace “(De-)Kompression” with “(De-)Komprimierung”.
      Previously, both forms were used in this context and are now used in a
      manner consistent with “Komprimierung” being more likely to refer to
      a process.
    * Consistently translate “standard input”/“output”
    * Use “Zeichen” instead of false friend “Charakter” for “character”
    * Insert commas around relative clauses (as required in German)
    * Some other minor corrections
    * Capitalize “ß” as “ẞ”
    * Consistently start option descriptions in --help with capital letters
    
    Acked-By: Andre Noll <maan@tuebingen.mpg.de>
    
    * Update after msgmerge

 po/de.po | 383 ++++++++++++++++++++++++++++++++-------------------------------
 1 file changed, 196 insertions(+), 187 deletions(-)

commit c8988414e5b67b8ef2fe0ba7b1ccdd0ec73c60d3
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-08-11 13:23:04 +0300

    Build: Minor Cygwin cleanup.
    
    Some tests used "cygwin*" and some used "cygwin". I changed
    them all to use "cygwin". Shouldn't affect anything in practice.

 configure.ac | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 85a6dfed53477906bfe9a7c0123dd412e391cb48
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-08-11 13:21:52 +0300

    Build: Support building of MSYS2 binaries.

 configure.ac | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)

commit 77f270be8432df2e4516a0c48814b6976d6618c5
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-08-09 21:06:26 +0300

    Windows: Define DLL_EXPORT when building liblzma.dll with MSVC.
    
    src/liblzma/common/common.h uses it to set __declspec(dllexport)
    for the API symbols.
    
    Thanks to Adam Walling.

 windows/liblzma_dll.vcxproj | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 8c975446c5903090a5a8493b5b96b71003056a88
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-08-09 21:02:20 +0300

    Windows: Omit unneeded header files from MSVC project files.

 windows/liblzma.vcxproj     | 5 -----
 windows/liblzma_dll.vcxproj | 5 -----
 2 files changed, 10 deletions(-)

commit 119a00434954726ca58e4a578e6469f530fca30e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-07-12 20:48:19 +0300

    liblzma: A MSVC-specific hack isn't needed with MSVC 2013 and newer.

 src/liblzma/api/lzma.h | 18 +++++++++++++-----
 1 file changed, 13 insertions(+), 5 deletions(-)

commit d4e7c557fcab353539c9481a8d95cb04bcb15c7c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-06-19 20:38:55 +0300

    Update THANKS.

 THANKS | 2 ++
 1 file changed, 2 insertions(+)

commit 98001740ca56c894a7bd32eb47e9857a8a7d878d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-06-19 20:21:30 +0300

    Windows: Update the docs.

 INSTALL                                            | 29 ++++++++-----
 windows/INSTALL-MSVC.txt                           | 47 ++++++++++++++++++++++
 windows/{INSTALL-Windows.txt => INSTALL-MinGW.txt} |  2 +-
 3 files changed, 67 insertions(+), 11 deletions(-)

commit 28195e4c877007cc760ecea1d17f740693d66873
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-06-19 17:25:31 +0300

    Windows: Add MSVC project files for building liblzma.
    
    Thanks to Adam Walling for creating these files.

 windows/liblzma.vcxproj     | 359 ++++++++++++++++++++++++++++++++++++++++
 windows/liblzma_dll.vcxproj | 388 ++++++++++++++++++++++++++++++++++++++++++++
 windows/xz_win.sln          |  48 ++++++
 3 files changed, 795 insertions(+)

commit 960440f3230dc628f6966d9f7614fc1b28baf44e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2015-05-13 20:57:55 +0300

    Tests: Fix a memory leak in test_bcj_exact_size.
    
    Thanks to Cristian Rodríguez.

 tests/test_bcj_exact_size.c | 1 +
 1 file changed, 1 insertion(+)
