commit 495aaf3a5b7200a5d2bf449bbbcc0e18834607af
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2014-09-20 20:44:32 +0300

    Bump version and soname for 5.0.7.

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

commit ac6c8921d1d8d2d749d5c97f9a0b0594cc863cea
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2014-09-20 20:43:29 +0300

    Update NEWS for 5.0.7.

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

commit d1b0276aafd441a3d4db9dfd5dd9880e9f834d49
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2014-09-20 20:21:18 +0300

    liblzma: Fix invalid Libs.private value in liblzma.pc.

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

commit cac72956b1e56788182ac14bfb25519636afd503
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2014-09-20 19:42:56 +0300

    liblzma: Fix a portability problem in Makefile.am.
    
    POSIX supports $< only in inference rules (suffix rules).
    Using it elsewhere is a GNU make extension and doesn't
    work e.g. with OpenBSD make.
    
    Thanks to Christian Weisgerber for the patch.

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

commit 2cdf0875dedca3e89b02ad5ac8aa1109f902ae11
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2014-09-14 19:35:45 +0300

    Bump version and soname for 5.0.6.

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

commit 0168b6c8fbc88cae61b1f5fb41d6c33c9e127967
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2014-09-14 19:33:46 +0300

    Update NEWS for 5.0.6.

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

commit 13337714e89d002af7af48d6853f977de985d7de
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2014-06-13 19:21:54 +0300

    xzgrep: List xzgrep_expected_output in tests/Makefile.am.

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

commit ccc728d8290c0464c7af62790b1c5528eceaae35
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2014-06-13 18:58:22 +0300

    xzgrep: Improve the test script.
    
    Now it should be close to the functionality of the original
    version by Pavel Raiskup.

 tests/Makefile.am            |  3 ++-
 tests/test_scripts.sh        | 24 ++++++++++++++----------
 tests/xzgrep_expected_output | 39 +++++++++++++++++++++++++++++++++++++++
 3 files changed, 55 insertions(+), 11 deletions(-)

commit 948f5865fe65061e215baa8ed63be570bae152ea
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2014-06-11 21:03:25 +0300

    xzgrep: Add a test for the previous fix.
    
    This is a simplified version of Pavel Raiskup's
    original patch.

 tests/test_scripts.sh | 26 ++++++++++++++++++++++----
 1 file changed, 22 insertions(+), 4 deletions(-)

commit 64228d0d5cd75af31e5c330cc3a792016413fabf
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2014-06-11 20:43:28 +0300

    xzgrep: exit 0 when at least one file matches.
    
    Mimic the original grep behavior and return exit_success when
    at least one xz compressed file matches given pattern.
    
    Original bugreport:
    https://bugzilla.redhat.com/show_bug.cgi?id=1108085
    
    Thanks to Pavel Raiskup for the patch.

 src/scripts/xzgrep.in | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

commit 98d3368ef4bff0face78d6932f2156730c8cb658
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2014-04-25 17:53:42 +0300

    Build: Fix the combination of --disable-xzdec --enable-lzmadec.
    
    In this case "make install" could fail if the man page directory
    didn't already exist at the destination. If it did exist, a
    dangling symlink was created there. Now the link is omitted
    instead. This isn't the best fix but it's better than the old
    behavior.

 src/xzdec/Makefile.am | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

commit ba3b5dd082db2cb5973e877a74221d739c663fb4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2014-04-25 17:44:26 +0300

    Build: Add --disable-doc to configure.

 INSTALL      | 6 ++++++
 Makefile.am  | 2 ++
 configure.ac | 6 ++++++
 3 files changed, 14 insertions(+)

commit 3d4575f2367fe8f1f2dcacba014e6c0aef388535
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2014-04-24 18:06:24 +0300

    Update INSTALL.
    
    Add a note about failing "make check". The source of
    the problem should be fixed in libtool (if it really is
    a libtool bug and not mine) but I'm unable to spend time
    on that for now. Thanks to Nelson H. F. Beebe for reporting
    the issue.
    
    Add a note about a possible need to run "ldconfig" after
    "make install".

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

commit b9f0584e3eff421eadbb6604de0b0b40bf87e129
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2014-04-09 17:26:10 +0300

    xz: Rename a variable to avoid a namespace collision on Solaris.
    
    I don't know the details but I have an impression that there's
    no problem in practice if using GCC since people have built xz
    with GCC (without patching xz), but renaming the variable cannot
    hurt either.
    
    Thanks to Mark Ashley.

 src/xz/signals.c | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

commit cc41bcaf77c9c27ec09ef033fb3300e994e828e6
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2014-04-26 08:45:49 +0300

    xz: Fix a comment.

 src/xz/coder.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit e34025d666852839388f997d076e3577847dd10f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2014-01-12 16:44:52 +0200

    liblzma: Avoid C99 compound literal arrays.
    
    MSVC 2013 doesn't like them. Maybe they aren't so good
    for readability either since many aren't used to them.

 src/liblzma/lzma/lzma_encoder_presets.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit 0b6168974f1fac3a06157039235b66e4161b9b42
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2014-01-12 12:50:30 +0200

    liblzma: Remove a useless C99ism from sha256.c.
    
    Unsurprisingly it makes no difference in compiled output.

 src/liblzma/check/sha256.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 41e436076cfdcccc7e853de73b0d56b3d6d42053
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2014-01-12 12:17:08 +0200

    xz: Fix use of wrong variable.
    
    Since the only call to suffix_set() uses optarg
    as the argument, fixing this bug doesn't change
    the behavior of the program.

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

commit c33efefd4ef0931e5795e13725d4bd2203571ce0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2014-04-26 08:37:00 +0300

    Fix typos in comments.

 src/liblzma/check/crc32_fast.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e560c82f1f5693d88db9dc71f656436135f17595
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-11-26 18:20:16 +0200

    Update THANKS.

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

commit 05192b32e553eac5dfbd646b6102d10187f29a05
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-11-26 18:20:09 +0200

    liblzma: Document the need for block->check for lzma_block_header_decode().
    
    Thanks to Tomer Chachamu.

 src/liblzma/api/lzma/block.h | 3 +++
 1 file changed, 3 insertions(+)

commit 0f35eafe51db7b1eb0711bc8cc829ea6896b34f4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-10-26 12:47:04 +0300

    Update TODO.

 TODO | 4 ----
 1 file changed, 4 deletions(-)

commit fc9eaf81d718488b052e5c65f9d6f08acc858873
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-09-11 14:40:35 +0300

    Build: Remove a comment about Automake 1.10 from configure.ac.
    
    The previous commit supports silent rules and that requires
    Automake 1.11.

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

commit 090c69dda59e00fc86d0792879bd921bb1156029
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-09-09 20:37:03 +0300

    Build: Create liblzma.pc in a src/liblzma/Makefile.am.
    
    Previously it was done in configure, but doing that goes
    against the Autoconf manual. Autoconf requires that it is
    possible to override e.g. prefix after running configure
    and that doesn't work correctly if liblzma.pc is created
    by configure.
    
    A potential downside of this change is that now e.g.
    libdir in liblzma.pc is a standalone string instead of
    being defined via ${prefix}, so if one overrides prefix
    when running pkg-config the libdir won't get the new value.
    I don't know if this matters in practice.
    
    Thanks to Vincent Torri.

 configure.ac            |  1 -
 src/liblzma/Makefile.am | 20 ++++++++++++++++++++
 2 files changed, 20 insertions(+), 1 deletion(-)

commit 1f35331332273de01c46897cafdb37f8e6e285db
Author: Anders F Bjorklund <afb@users.sourceforge.net>
Date:   2013-08-02 15:59:46 +0200

    macosx: separate liblzma package

 macosx/build.sh | 23 +++++++++++++++--------
 1 file changed, 15 insertions(+), 8 deletions(-)

commit 1415f1d94644f28e07d544bc1e06b0636081abee
Author: Anders F Bjorklund <afb@users.sourceforge.net>
Date:   2013-08-02 15:58:44 +0200

    macosx: set minimum to leopard

 macosx/build.sh | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

commit 41913949b93414a21ae9fb1a8e9b7cdde8b37f98
Author: Anders F Bjorklund <afb@users.sourceforge.net>
Date:   2011-08-07 13:13:30 +0200

    move configurables into variables

 macosx/build.sh | 25 ++++++++++++++++++-------
 1 file changed, 18 insertions(+), 7 deletions(-)

commit 3dffda33f47dc220bb1738564fe02effa9da4c8e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-07-15 14:08:02 +0300

    Build: Fix the detection of missing CRC32.
    
    Thanks to Vincent Torri.

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

commit b69900ed0b2f914fc6c0a180dcb522dbe5b80ea7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-06-30 18:02:27 +0300

    Man pages: Use similar syntax for synopsis as in xz.
    
    The man pages of lzmainfo, xzmore, and xzdec had similar
    constructs as the man page of xz had before the commit
    eb6ca9854b8eb9fbf72497c1cf608d6b19d2d494. Eric S. Raymond
    didn't mention these man pages in his bug report, but
    it's nice to be consistent.

 src/lzmainfo/lzmainfo.1 |  4 ++--
 src/scripts/xzmore.1    |  6 +++---
 src/xzdec/xzdec.1       | 10 +++++-----
 3 files changed, 10 insertions(+), 10 deletions(-)

commit cf4a1e1879d89be314ef3c064bd2656ea452f87e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-06-30 15:55:09 +0300

    Update NEWS for 5.0.5.

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

commit cb94bb6d1f34e1e93c2d634ea9c3b7dfb3981d05
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-06-30 15:54:38 +0300

    Bump version and soname for 5.0.5.

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

commit b7dee202d5b041ccae028d0c5433b83cecbe9e5d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-06-28 23:56:17 +0300

    xz: Fix return value type in io_write_buf().
    
    It didn't affect the behavior of the code since -1
    becomes true anyway.

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

commit 265e7b44d804b47373f10b7da28350db7611cea6
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-06-28 18:46:13 +0300

    xz: Remove an outdated NetBSD-specific comment.
    
    Nowadays errno == EFTYPE is documented in open(2).

 src/xz/file_io.c | 4 ----
 1 file changed, 4 deletions(-)

commit 78c2f8db902195468b8249c432252a6b281db836
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-06-28 18:09:47 +0300

    xz: Fix error detection of fcntl(fd, F_SETFL, flags) calls.
    
    POSIX says that fcntl(fd, F_SETFL, flags) returns -1 on
    error and "other than -1" on success. This is how it is
    documented e.g. on OpenBSD too. On Linux, success with
    F_SETFL is always 0 (at least accorinding to fcntl(2)
    from man-pages 3.51).

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

commit 91750dff8f2c654ff636f12a2acdffe5492374b3
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-06-28 17:36:47 +0300

    xz: Fix use of wrong variable in a fcntl() call.
    
    Due to a wrong variable name, when writing a sparse file
    to standard output, *all* file status flags were cleared
    (to the extent the operating system allowed it) instead of
    only clearing the O_APPEND flag. In practice this worked
    fine in the common situations on GNU/Linux, but I didn't
    check how it behaved elsewhere.
    
    The original flags were still restored correctly. I still
    changed the code to use a separate boolean variable to
    indicate when the flags should be restored instead of
    relying on a special value in stdout_flags.

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

commit e11888a79a4a77a69afde60445880d44f63d01aa
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-06-26 13:30:57 +0300

    xz: Check the value of lzma_stream_flags.version in --list.
    
    It is a no-op for now, but if an old xz version is used
    together with a newer liblzma that supports something new,
    then this check becomes important and will stop the old xz
    from trying to parse files that it won't understand.

 src/xz/list.c | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

commit f39ddd88f3222219ada88998cf30abfdd3e0e96c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-06-26 12:17:00 +0300

    Build: Require Automake 1.12 and use serial-tests option.
    
    It should actually still work with Automake 1.10 if
    the serial-tests option is removed. Automake 1.13 started
    using parallel tests by default and the option to get
    the old behavior isn't supported before 1.12.
    
    At least for now, parallel tests don't improve anything
    in XZ Utils but they hide the progress output from
    test_compress.sh.

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

commit cb84e278027a90e9827a6f4d3bb0b4d4744a2fbb
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-06-23 17:36:47 +0300

    xz: Validate Uncompressed Size from Block Header in list.c.
    
    This affects only "xz -lvv". Normal decompression with xz
    already detected if Block Header and Index had mismatched
    Uncompressed Size fields. So this just makes "xz -lvv"
    show such files as corrupt instead of showing the
    Uncompressed Size from Index.

 src/xz/list.c | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

commit f01780fce454c7489f7dcbf806299b50da5f51b7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-06-26 10:58:58 +0300

    Update THANKS.

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

commit d98ede7d700b892e32d9c2f46563b6ebc566786d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-06-21 22:04:45 +0300

    xz: Make the man page more friendly to doclifter.
    
    Thanks to Eric S. Raymond.

 src/xz/xz.1 | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit 19b447b64b3f520cd5b11429000b092f7c76709b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-06-21 21:54:59 +0300

    xz: A couple of man page fixes.
    
    Now the interaction of presets and custom filter chains
    is described correctly. Earlier it contradicted itself.
    
    Thanks to DevHC who reported these issues on IRC to me
    on 2012-12-14.

 src/xz/xz.1 | 35 +++++++++++++++++++++++------------
 1 file changed, 23 insertions(+), 12 deletions(-)

commit 45edf2966fc9a4d2eae8f84b2fa027fb4fa1df8b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-06-21 21:50:26 +0300

    xz: Fix interaction between preset and custom filter chains.
    
    There was somewhat illogical behavior when --extreme was
    specified and mixed with custom filter chains.
    
    Before this commit, "xz -9 --lzma2 -e" was equivalent
    to "xz --lzma2". After it is equivalent to "xz -6e"
    (all earlier preset options get forgotten when a custom
    filter chain is specified and the default preset is 6
    to which -e is applied). I find this less illogical.
    
    This also affects the meaning of "xz -9e --lzma2 -7".
    Earlier it was equivalent to "xz -7e" (the -e specified
    before a custom filter chain wasn't forgotten). Now it
    is "xz -7". Note that "xz -7e" still is the same as "xz -e7".
    
    Hopefully very few cared about this in the first place,
    so pretty much no one should even notice this change.
    
    Thanks to Conley Moorhous.

 src/xz/coder.c | 35 +++++++++++++++++++++--------------
 1 file changed, 21 insertions(+), 14 deletions(-)

commit b065984e5a9272eb50bc0c6d3731e6199c0ae8a8
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-04-08 17:53:05 +0300

    xz: Change size_t to uint32_t in a few places.

 src/xz/coder.c | 6 +++---
 src/xz/coder.h | 2 +-
 2 files changed, 4 insertions(+), 4 deletions(-)

commit 32be621f52f2e1686db88baa7b01dc1ae338f426
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-04-27 22:07:46 +0300

    Build: Use -Wvla with GCC if supported.
    
    Variable-length arrays are mandatory in C99 but optional in C11.
    The code doesn't currently use any VLAs and it shouldn't in the
    future either to stay compatible with C11 without requiring any
    optional C11 features.

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

commit efb07cfba65e9e05984c02cd796c1b0338ce04dc
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-04-15 19:29:09 +0300

    xzdec: Improve the --help message.
    
    The options are now ordered in the same order as in xz's help
    message.
    
    Descriptions were added to the options that are ignored.
    I left them in parenthesis even if it looks a bit weird
    because I find it easier to spot the ignored vs. non-ignored
    options from the list that way.

 src/xzdec/xzdec.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit e3c8be13699e2813f5e2879d8187444b46d82d89
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-04-05 19:25:40 +0300

    Update THANKS.

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

commit ad8282efe483612f6b5544f9a0d2e4914fb2532a
Author: Jeff Bastian <jbastian@redhat.com>
Date:   2013-04-03 13:59:17 +0200

    xzgrep: make the '-h' option to be --no-filename equivalent
    
    * src/scripts/xzgrep.in: Accept the '-h' option in argument parsing.

 src/scripts/xzgrep.in | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9271a3eb0e022b23e8712154be851d0afe4c02e4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-04-05 19:34:09 +0300

    liblzma: Be less picky in lzma_alone_decoder().
    
    To avoid false positives when detecting .lzma files,
    rare values in dictionary size and uncompressed size fields
    were rejected. They will still be rejected if .lzma files
    are decoded with lzma_auto_decoder(), but when using
    lzma_alone_decoder() directly, such files will now be accepted.
    Hopefully this is an OK compromise.
    
    This doesn't affect xz because xz still has its own file
    format detection code. This does affect lzmadec though.
    So after this commit lzmadec will accept files that xz or
    xz-emulating-lzma doesn't.
    
    NOTE: lzma_alone_decoder() still won't decode all .lzma files
    because liblzma's LZMA decoder doesn't support lc + lp > 4.
    
    Reported here:
    http://sourceforge.net/projects/lzmautils/forums/forum/708858/topic/7068827
    
    Conflicts:
    	src/liblzma/common/alone_decoder.c
    	src/liblzma/common/alone_decoder.h

 src/liblzma/common/alone_decoder.c | 22 ++++++++++++++--------
 src/liblzma/common/alone_decoder.h |  5 +++--
 src/liblzma/common/auto_decoder.c  |  2 +-
 3 files changed, 18 insertions(+), 11 deletions(-)

commit 211b931cee58626c1d2e021810cb108cb5cbc10f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2013-03-05 19:14:50 +0200

    Avoid unneeded use of awk in xzless.
    
    Use "read" instead of "awk" in xzless to get the version
    number of "less". The need for awk was introduced in
    the commit db5c1817fabf7cbb9e4087b1576eb26f0747338e.
    
    Thanks to Ariel P for the patch.

 src/scripts/xzless.in | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 9f62fd9605eade23b62b07a235d1f02156f7a5c6
Author: Jonathan Nieder <jrnieder@gmail.com>
Date:   2012-11-19 00:10:10 -0800

    xzless: Make "less -V" parsing more robust
    
    In v4.999.9beta~30 (xzless: Support compressed standard input,
    2009-08-09), xzless learned to parse ‘less -V’ output to figure out
    whether less is new enough to handle $LESSOPEN settings starting
    with “|-”.  That worked well for a while, but the version string from
    ‘less’ versions 448 (June, 2012) is misparsed, producing a warning:
    
    	$ xzless /tmp/test.xz; echo $?
    	/usr/bin/xzless: line 49: test: 456 (GNU regular expressions): \
    	integer expression expected
    	0
    
    More precisely, modern ‘less’ lists the regexp implementation along
    with its version number, and xzless passes the entire version number
    with attached parenthetical phrase as a number to "test $a -gt $b",
    producing the above confusing message.
    
    	$ less-444 -V | head -1
    	less 444
    	$ less -V | head -1
    	less 456 (no regular expressions)
    
    So relax the pattern matched --- instead of expecting "less <number>",
    look for a line of the form "less <number>[ (extra parenthetical)]".
    While at it, improve the behavior when no matching line is found ---
    instead of producing a cryptic message, we can fall back on a LESSPIPE
    setting that is supported by all versions of ‘less’.
    
    The implementation uses "awk" for simplicity.  Hopefully that’s
    portable enough.
    
    Reported-by: Jörg-Volker Peetz <jvpeetz@web.de>
    Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>

 src/scripts/xzless.in | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 1d05980f5b5c2c94d833001daccacce4a466876e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-10-03 15:54:24 +0300

    xz: Fix the note about --rsyncable on the man page.

 src/xz/xz.1 | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

commit fb68497333598688d309a92838d91fd560f7e9f0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-09-28 20:11:09 +0300

    xz: Improve handling of failed realloc in xrealloc.
    
    Thanks to Jim Meyering.

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

commit 75013db6d4d63c195bd8b8d45729b4be0665a812
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-12-15 20:01:02 +0200

    A few typo fixes to comments and the xz man page.
    
    Thanks to Jim Meyering.

 configure.ac               | 2 +-
 src/liblzma/check/sha256.c | 1 -
 src/xz/xz.1                | 4 ++--
 3 files changed, 3 insertions(+), 4 deletions(-)

commit e44b21839b1dcbac5097be39b87dd2ddb6e114fd
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-08-02 17:13:30 +0300

    Build: Bump gettext version requirement to 0.18.
    
    Otherwise too old version of m4/lib-link.m4 gets included
    when autoreconf -fi is run.

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

commit fd3dbb23ca7e75a7a888d7e897c381dc06308307
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-07-05 07:36:28 +0300

    Tests: Remove tests/test_block.c that had gotten committed accidentally.

 tests/test_block.c | 52 ----------------------------------------------------
 1 file changed, 52 deletions(-)

commit 05a735d279d74af437c31f25f69aded4713c1a3d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-07-05 07:33:35 +0300

    Build: Include macosx/build.sh in the distribution.
    
    It has been in the Git repository since 2010 but probably
    few people have seen it since it hasn't been included in
    the release tarballs. :-(

 Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit 4e6d62793b5e7b87edcc93c7ded072c1ecd94173
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-07-05 07:24:45 +0300

    Docs: Fix the name LZMA Utils -> XZ Utils in debug/README.

 debug/README | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit dd95b5e7614baf1f07a1316b5106bd616a9efa79
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-07-05 07:23:17 +0300

    Include debug/translation.bash in the distribution.
    
    Also fix the script name mentioned in README.

 README            | 4 ++--
 debug/Makefile.am | 3 +++
 2 files changed, 5 insertions(+), 2 deletions(-)

commit 20778053a07eb90c159c1377ca8dc05a90fd530b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-06-22 14:36:16 +0300

    xz: Update man page date to match the latest update.

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

commit 2cefa84af676da37d7e9c466d55d46c67ab00c22
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-06-22 10:25:43 +0300

    Bump version and soname for 5.0.4.

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

commit 433fec191a17e45690809e54146ea7a773f54cff
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-06-22 10:25:09 +0300

    Update NEWS for 5.0.4.

 NEWS | 25 +++++++++++++++++++------
 1 file changed, 19 insertions(+), 6 deletions(-)

commit 711fa680f552a4003df73b37e6dc4d6e00b47bcd
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-06-18 21:27:47 +0300

    Docs: Language fix to 01_compress_easy.c.
    
    Thanks to Jonathan Nieder.

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

commit 3d7ab1dc61a75c560828be5df96598388b771456
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-06-14 20:15:30 +0300

    Fix the top-level Makefile.am for the new example programs.

 Makefile.am | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

commit ef8b8e5f111469b5bc005975f7abb9abbd372b25
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-06-14 10:52:33 +0300

    Docs: Add new example programs.
    
    These have more comments than the old examples and
    human-readable error messages. More tutorial-like examples
    are needed but these are a start.

 doc/examples/00_README.txt        |  27 ++++
 doc/examples/01_compress_easy.c   | 297 ++++++++++++++++++++++++++++++++++++++
 doc/examples/02_decompress.c      | 287 ++++++++++++++++++++++++++++++++++++
 doc/examples/03_compress_custom.c | 193 +++++++++++++++++++++++++
 doc/examples/Makefile             |  23 +++
 5 files changed, 827 insertions(+)

commit 75c149bc8045a26f8bc719cb8ed20668dab79091
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-06-14 10:33:27 +0300

    Docs: Move xz_pipe_comp.c and xz_pipe_decomp.c to doc/examples_old.
    
    It is good to keep these around to so that if someone has
    copied the decompressor bug from xz_pipe_decomp.c he has
    an example how to easily fix it.

 doc/examples/xz_pipe_comp.c       | 127 --------------------------------------
 doc/examples/xz_pipe_decomp.c     | 123 ------------------------------------
 doc/examples_old/xz_pipe_comp.c   | 127 ++++++++++++++++++++++++++++++++++++++
 doc/examples_old/xz_pipe_decomp.c | 123 ++++++++++++++++++++++++++++++++++++
 4 files changed, 250 insertions(+), 250 deletions(-)

commit 456307ebf947a5f50bd995d617b99c1215572308
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-06-14 10:33:01 +0300

    Docs: Fix a bug in xz_pipe_decomp.c example program.

 doc/examples/xz_pipe_decomp.c | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

commit 4c310b8a29bc257e6ccbd2310f12f258678f3fef
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-05-31 15:53:25 +0300

    Translations: Update the Italian translation.
    
    Thanks to Milo Casagrande.

 po/it.po | 311 ++++++++++++++++++++++++++++++---------------------------------
 1 file changed, 146 insertions(+), 165 deletions(-)

commit ec32b79366dc47a55ea877589df9e8509ba113a7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-05-30 23:15:07 +0300

    Translations: Update the French translation.
    
    Thanks to Adrien Nader.

 po/fr.po | 237 +++++++++++++++++++++++++++++++--------------------------------
 1 file changed, 118 insertions(+), 119 deletions(-)

commit dd06f40e4dd7649525e4f28d890dc238a3aa37e5
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-05-29 22:26:27 +0300

    Translations: Update the German translation.

 po/de.po | 169 ++++++++++++++++++++++++++++++++++-----------------------------
 1 file changed, 91 insertions(+), 78 deletions(-)

commit c66808d1f55d0149ed57c536cc9b52e9c8b583bc
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-05-29 22:12:57 +0300

    Translations: Update Polish translation.

 po/pl.po | 150 ++++++++++++++++++++++++++++++++++-----------------------------
 1 file changed, 82 insertions(+), 68 deletions(-)

commit 556c22dfed195c1466b298183b850d6c28544900
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-05-29 13:10:36 +0300

    Preliminary NEWS for 5.0.4.

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

commit dd13b66bf582f49d3aec36e3410ff8541b7506da
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-05-28 20:42:11 +0300

    liblzma: Fix possibility of incorrect LZMA_BUF_ERROR.
    
    lzma_code() could incorrectly return LZMA_BUF_ERROR if
    all of the following was true:
    
      - The caller knows how many bytes of output to expect
        and only provides that much output space.
    
      - When the last output bytes are decoded, the
        caller-provided input buffer ends right before
        the LZMA2 end of payload marker. So LZMA2 won't
        provide more output anymore, but it won't know it
        yet and thus won't return LZMA_STREAM_END yet.
    
      - A BCJ filter is in use and it hasn't left any
        unfiltered bytes in the temp buffer. This can happen
        with any BCJ filter, but in practice it's more likely
        with filters other than the x86 BCJ.
    
    Another situation where the bug can be triggered happens
    if the uncompressed size is zero bytes and no output space
    is provided. In this case the decompression can fail even
    if the whole input file is given to lzma_code().
    
    A similar bug was fixed in XZ Embedded on 2011-09-19.

 src/liblzma/simple/simple_coder.c |   2 +-
 tests/Makefile.am                 |   4 +-
 tests/test_bcj_exact_size.c       | 112 ++++++++++++++++++++++++++++++++++++++
 3 files changed, 116 insertions(+), 2 deletions(-)

commit a0223bf796fdaad51a11ad02c4195c694849cc78
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-05-28 15:38:32 +0300

    Update THANKS.

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

commit 86e57e4bfefe3fd8e13615c41604165bb2359501
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-05-28 15:37:43 +0300

    xz: Don't show a huge number in -vv when memory limit is disabled.

 src/xz/message.c | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

commit 13e44a94da19d1ef14832ff12d3877a6fd2c54c0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-05-27 22:30:17 +0300

    xz: Document the "summary" lines of --robot -lvv.
    
    This documents only the columns that are in v5.0.
    The new columns added in the master branch aren't
    necessarily stable yet.

 src/xz/xz.1 | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

commit 2f90345e13ab8fea4de45a4f1caa73ebc63a62e7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-05-27 21:53:20 +0300

    xz: Fix output of verbose --robot --list modes.
    
    It printed the filename in "filename (x/y)" format
    which it obviously shouldn't do in robot mode.

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

commit 8d4864f53ffae5d862c691a0b334a6b69bc5366e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-05-10 21:15:17 +0300

    Update THANKS.

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

commit 35e9c58abb0ce3993da844aaeaa3e7231cd2be8f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-05-10 21:14:16 +0300

    Docs: Cleanup line wrapping a bit.

 README          | 12 ++++++------
 doc/history.txt | 49 +++++++++++++++++++++++++------------------------
 2 files changed, 31 insertions(+), 30 deletions(-)

commit 532b3e4c568a228309b56f95c13435fd078dbe02
Author: Benno Schulenberg <bensberg@justemail.net>
Date:   2012-03-13 22:04:04 +0100

    Fix a few typos and add some missing articles in some documents.
    
    Also hyphenate several compound adjectives.
    
    Signed-off-by: Benno Schulenberg <bensberg@justemail.net>

 AUTHORS         |  6 +++---
 README          | 42 ++++++++++++++++++++---------------------
 doc/faq.txt     | 24 ++++++++++++------------
 doc/history.txt | 58 ++++++++++++++++++++++++++++-----------------------------
 4 files changed, 65 insertions(+), 65 deletions(-)

commit afb6ce8c82ffef8f2505a3759da72a733c7b0b8f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-04-29 11:51:25 +0300

    Windows: Update notes about static linking with MSVC.

 windows/README-Windows.txt | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

commit 7c3ba2ed5c3c878d4a14ca549b46dbff60c6d565
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-04-19 15:25:26 +0300

    liblzma: Remove outdated comments.

 src/liblzma/simple/simple_coder.c   | 3 ---
 src/liblzma/simple/simple_private.h | 3 +--
 2 files changed, 1 insertion(+), 5 deletions(-)

commit f55db9c187651094f43881c49db2b2d9ffee6b80
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-04-19 14:17:52 +0300

    DOS: Link against DJGPP's libemu to support FPU emulation.
    
    This way xz should work on 386SX and 486SX. Floating point
    only is needed for verbose output in xz.

 dos/Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 203edff4c761dbd7cac76ea66e4eed501c23e7a3
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-04-19 13:58:55 +0300

    Docs: Update MINIX 3 information in INSTALL.

 INSTALL | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit f0a8f95c215628967b7cf9bd9b0a9e4172f50bb4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-02-22 14:23:13 +0200

    Update THANKS.

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

commit b7ad23fa78646036c0290cd91eada939c9a31526
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-02-22 14:02:34 +0200

    Fix exit status of xzgrep when grepping binary files.
    
    When grepping binary files, grep may exit before it has
    read all the input. In this case, gzip -q returns 2 (eating
    SIGPIPE), but xz and bzip2 show SIGPIPE as the exit status
    (e.g. 141). This causes wrong exit status when grepping
    xz- or bzip2-compressed binary files.
    
    The fix checks for the special exit status that indicates SIGPIPE.
    It uses kill -l which should be supported everywhere since it
    is in both SUSv2 (1997) and POSIX.1-2008.
    
    Thanks to James Buren for the bug report.

 src/scripts/xzgrep.in | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 4e19fbb04a0035030406482319e264426459eb24
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-02-22 12:08:43 +0200

    Update THANKS.

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

commit c6fa03a427e3d1320794102cee3ff4f5ae00eb36
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-05-24 18:47:52 +0300

    Fix compiling with IBM XL C on AIX.

 INSTALL      | 36 ++++++++++++++++++++++--------------
 configure.ac |  6 +++++-
 2 files changed, 27 insertions(+), 15 deletions(-)

commit 7b6ffc98645e1b3b302b6680be0a901d1ebf7358
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-05-24 18:37:08 +0300

    Build: Upgrade m4/acx_pthread.m4 to the latest version.
    
    It was renamed to ax_pthread.m4 in Autoconf Archive.

 configure.ac      |   2 +-
 m4/acx_pthread.m4 | 279 ------------------------------------------------
 m4/ax_pthread.m4  | 309 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 310 insertions(+), 280 deletions(-)

commit bfac2be5023994fcc53de2844e7dd3af61910dc2
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2012-01-10 17:13:03 +0200

    Tests: Fix a compiler warning with _FORTIFY_SOURCE.
    
    Reported here:
    http://sourceforge.net/projects/lzmautils/forums/forum/708858/topic/4927385

 tests/create_compress_files.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit df85e156716a4eecb7e2978691f03f729444d998
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-12-19 21:21:29 +0200

    Docs: Explain the stable releases better in README.

 README | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit d06d32f108c8278c25c24b2e8666bda7b2ec23b5
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-11-04 17:57:16 +0200

    xz: Fix a typo in a comment.
    
    Thanks to Bela Lubkin.

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

commit 636fdcfbf542f1e84db2c4736004d84be4b12c84
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-11-03 17:08:02 +0200

    Update THANKS.

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

commit 55fd02f83ecd6cbd6925a3e8a3d43b8d4ef2a17c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-11-03 17:07:22 +0200

    xz: Fix xz on EBCDIC systems.
    
    Thanks to Chris Donawa.

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

commit 4052f36053b931bad847a36aabf1a07d0034e297
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-09-06 12:03:41 +0300

    Build: Fix "make check" on Windows.

 tests/Makefile.am  | 7 +++++--
 windows/build.bash | 2 ++
 2 files changed, 7 insertions(+), 2 deletions(-)

commit 0f25758459c74c366a73f35d47ee12b75890bb79
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-08-09 21:19:13 +0300

    Update THANKS.

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

commit 70f03b51ffcb783646b20de8d97b6986c4280eec
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-08-09 21:16:44 +0300

    Workaround unusual SIZE_MAX on SCO OpenServer.

 src/common/sysdefs.h | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

commit f138bdf76a70029e8360062a0b227936b83b24c9
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-08-06 20:37:28 +0300

    Run the scripts with the correct shell in test_scripts.sh.
    
    The scripts are now made executable in the build tree.
    This way the scripts can be run like programs in
    test_scripts.sh. Previously test_scripts.sh always
    used sh but it's not correct if @POSIX_SHELL@ is set
    to something else by configure.
    
    Thanks to Jonathan Nieder for the patch.

 configure.ac          | 8 ++++----
 tests/test_scripts.sh | 8 ++++----
 2 files changed, 8 insertions(+), 8 deletions(-)

commit 2c144a0365c84dbf1b6722466746d42f2563a319
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-07-31 11:01:47 +0300

    Fix exit status of "xzdiff foo.xz bar.xz".
    
    xzdiff was clobbering the exit status from diff in a case
    statement used to analyze the exit statuses from "xz" when
    its operands were two compressed files. Save and restore
    diff's exit status to fix this.
    
    The bug is inherited from zdiff in GNU gzip and was fixed
    there on 2009-10-09.
    
    Thanks to Jonathan Nieder for the patch and
    to Peter Pallinger for reporting the bug.

 src/scripts/xzdiff.in |  2 ++
 tests/Makefile.am     |  4 +++-
 tests/test_scripts.sh | 54 +++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 59 insertions(+), 1 deletion(-)

commit edf339227a966f24aebe1845fcca9429b8f6e318
Author: Anders F Bjorklund <afb@users.sourceforge.net>
Date:   2010-11-05 12:56:11 +0100

    add build script for macosx universal

 macosx/build.sh | 92 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 92 insertions(+)

commit 7fcc6334ea8923550ba6b5347ff99dc8432234b0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-06-16 12:15:29 +0300

    liblzma: Remove unneeded semicolon.

 src/liblzma/lz/lz_encoder_hash.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 631f4d3ae6adfda84d1a110781d9402c12e16cfc
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-05-28 16:43:26 +0300

    Don't call close(-1) in tuklib_open_stdxxx() on error.
    
    Thanks to Jim Meyering.

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

commit c89faf4c9e5970e7f7f8a25521ed9aa62d1a2d9a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-05-28 09:47:56 +0300

    Translations: Update Italian translation.
    
    Thanks to Milo Casagrande.

 po/it.po | 333 +++++++++++++++++++++++++++++++++++----------------------------
 1 file changed, 184 insertions(+), 149 deletions(-)

commit 6fe2fc9b6ab5bf6848140823e9536370834f42fb
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-05-28 08:46:04 +0300

    Tests: Add a test file for the bug in the previous commit.

 tests/files/README                  |   4 ++++
 tests/files/bad-1-block_header-6.xz | Bin 0 -> 72 bytes
 2 files changed, 4 insertions(+)

commit 6c4d4db2bc8d8b682bd927144d37daa2ab21a6d6
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-05-27 22:25:44 +0300

    xz: Fix error handling in xz -lvv.
    
    It could do an invalid free() and read past the end
    of the uninitialized filters array.

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

commit 844f84fcad9670c543550edf7c7e42630c8f7715
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-05-27 22:09:49 +0300

    liblzma: Handle allocation failures correctly in lzma_index_init().
    
    Thanks to Jim Meyering.

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

commit 240e8b9791df597063a3b68d04ffcb3aa4f2de6a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-05-23 18:30:30 +0300

    Build: Set GZIP_ENV=-9n in top-level Makefile.am.

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

commit e32cb264ea72a4459810f30abad70dae5a4fa17d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-05-21 16:59:22 +0300

    Bump version and soname for 5.0.3.

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

commit 65cff45f8fd1c250491557157cce0f5f38481082
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-05-21 16:56:53 +0300

    Update NEWS for 5.0.3.

 NEWS | 36 ++++++++++++++++++++++++++++++++++--
 1 file changed, 34 insertions(+), 2 deletions(-)

commit 316c67ffdae1f811ac95e838d5290a013bff4ca7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-05-21 16:28:44 +0300

    Add French translation.
    
    It is known that the BCJ filter --help text is only
    partially translated.

 po/LINGUAS |   1 +
 po/fr.po   | 864 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 865 insertions(+)

commit 1931175eea6d09c0845d6e8e334a7333647f11c0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-05-21 15:12:10 +0300

    xz: Translate also the string used to print the program name.
    
    French needs a space before a colon, e.g. "xz : foo error".

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

commit 841dc1f891b48b23f84c0f0e0c86c7c4e4bdcdf5
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-05-17 12:26:28 +0300

    Update THANKS.

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

commit 0f7e2d36240ebf1159d5fb85d8cd7422337a0d3f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-05-17 12:21:33 +0300

    Update INSTALL with a note about linker problem on OpenSolaris x86.

 INSTALL | 23 +++++++++++++++++------
 1 file changed, 17 insertions(+), 6 deletions(-)

commit 793d857e01e1725f16fc0c8af8172c91a9e38617
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-05-17 12:01:37 +0300

    Build: Fix initialization of enable_check_* variables in configure.ac.
    
    This doesn't matter much in practice since it is unlikely
    that anyone would have such environment variable names.
    
    Thanks to Wim Lewis.

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

commit afcff45cee04c5c7d9c333504046ffb63d1418b5
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-05-17 11:54:38 +0300

    Add underscores to attributes (__attribute((__foo__))).

 src/liblzma/common/alone_decoder.c |  2 +-
 src/liblzma/common/alone_encoder.c |  2 +-
 src/liblzma/common/block_encoder.c |  2 +-
 src/liblzma/common/common.c        |  2 +-
 src/liblzma/common/common.h        |  2 +-
 src/liblzma/common/index_decoder.c |  9 +++++----
 src/liblzma/common/index_encoder.c | 11 ++++++-----
 src/liblzma/delta/delta_encoder.c  |  2 +-
 src/liblzma/lz/lz_decoder.c        |  2 +-
 src/liblzma/lz/lz_encoder.c        |  2 +-
 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  |  2 +-
 src/liblzma/simple/sparc.c         |  2 +-
 src/lzmainfo/lzmainfo.c            |  4 ++--
 src/xz/coder.c                     |  2 +-
 src/xz/hardware.h                  |  2 +-
 src/xz/message.c                   |  2 +-
 src/xz/message.h                   | 18 +++++++++---------
 src/xz/options.c                   |  6 +++---
 src/xz/signals.c                   |  2 +-
 src/xz/util.h                      |  6 +++---
 src/xzdec/xzdec.c                  |  6 +++---
 25 files changed, 49 insertions(+), 47 deletions(-)

commit 22159c6ba2300a006f2e46ce85ae132e2d2f7d57
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-04-18 19:35:49 +0300

    Update THANKS.

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

commit 5e3499059515033d1ce44b6fb0fa49183c7ac633
Author: Martin Väth <vaeth@mathematik.uni-wuerzburg.de>
Date:   2011-04-15 04:54:49 -0400

    xzgrep: fix typo in $0 parsing
    
    Reported-by: Diego Elio Pettenò <flameeyes@gentoo.org>
    Signed-off-by: Martin Väth <vaeth@mathematik.uni-wuerzburg.de>
    Signed-off-by: Mike Frysinger <vapier@gentoo.org>

 src/scripts/xzgrep.in | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 1125611b9b8d4a209b6a73d2c76e1b39c065972a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-04-12 11:59:49 +0300

    Remove doubled words from documentation and comments.
    
    Spot candidates by running these commands:
      git ls-files |xargs perl -0777 -n \
        -e 'while (/\b(then?|[iao]n|i[fst]|but|f?or|at|and|[dt]o)\s+\1\b/gims)' \
        -e '{$n=($` =~ tr/\n/\n/ + 1); ($v=$&)=~s/\n/\\n/g; print "$ARGV:$n:$v\n"}'
    
    Thanks to Jim Meyering for the original patch.

 doc/lzma-file-format.txt           | 4 ++--
 src/liblzma/common/alone_encoder.c | 2 +-
 src/liblzma/lzma/lzma2_encoder.c   | 2 +-
 src/xz/file_io.c                   | 2 +-
 src/xz/xz.1                        | 2 +-
 windows/INSTALL-Windows.txt        | 2 +-
 6 files changed, 7 insertions(+), 7 deletions(-)

commit 3f8fa53837bae8b44f3addf19923e26401336c3d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-04-11 21:04:13 +0300

    liblzma: Document lzma_easy_(enc|dec)oder_memusage() better too.

 src/liblzma/api/lzma/container.h | 9 +++++++++
 1 file changed, 9 insertions(+)

commit 320d734c20d0776e3eb80f6b5984ddeb494715b5
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-04-11 20:59:07 +0300

    liblzma: Document lzma_raw_(enc|dec)oder_memusage() better.
    
    It didn't mention the return value that is used if
    an error occurs.

 src/liblzma/api/lzma/filter.h | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit 2ee4edeffc8d9734bf68230df31b20ac6a94c9b5
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-04-11 13:59:50 +0300

    liblzma: Don't create an empty Block in lzma_stream_buffer_encode().
    
    Empty Block was created if the input buffer was empty.
    Empty Block wastes a few bytes of space, but more importantly
    it triggers a bug in XZ Utils 5.0.1 and older when trying
    to decompress such a file. 5.0.1 and older consider such
    files to be corrupt. I thought that no encoder creates empty
    Blocks when releasing 5.0.2 but I was wrong.

 src/liblzma/common/stream_buffer_encoder.c | 20 +++++++++++++-------
 1 file changed, 13 insertions(+), 7 deletions(-)

commit 73f56fb87d54091d0c4fd22d70e6f042902e3b63
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-04-11 13:28:40 +0300

    liblzma: Fix API docs to mention LZMA_UNSUPPORTED_CHECK.
    
    This return value was missing from the API comments of
    four functions.

 src/liblzma/api/lzma/block.h     | 1 +
 src/liblzma/api/lzma/container.h | 3 +++
 2 files changed, 4 insertions(+)

commit 4ce1cf97a88ae1640a380dd19cbc255d729f966b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-04-11 13:21:28 +0300

    liblzma: Validate encoder arguments better.
    
    The biggest problem was that the integrity check type
    wasn't validated, and e.g. lzma_easy_buffer_encode()
    would create a corrupt .xz Stream if given an unsupported
    Check ID. Luckily applications don't usually try to use
    an unsupport Check ID, so this bug is unlikely to cause
    many real-world problems.

 src/liblzma/common/block_buffer_encoder.c  | 18 ++++++++++++------
 src/liblzma/common/block_encoder.c         |  5 +++++
 src/liblzma/common/stream_buffer_encoder.c |  3 +++
 3 files changed, 20 insertions(+), 6 deletions(-)

commit 972f05d7a4268dbe42573701f83faa45d03249eb
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-04-09 18:29:30 +0300

    Update THANKS.

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

commit 28154eeaf6e3442cd1e174f4e81266d60c4dac60
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-04-09 18:28:58 +0300

    liblzma: Add missing #ifdefs to filter_common.c.
    
    Passing --disable-decoders to configure broke a few
    encoders due to missing #ifdefs in filter_common.c.
    
    Thanks to Jason Gorski for the patch.

 src/liblzma/common/filter_common.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit aa95516d3d509c6b7895ee519004afcf500a0759
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-04-02 14:49:56 +0300

    liblzma: Fix a memory leak in stream_encoder.c.
    
    It leaks old filter options structures (hundred bytes or so)
    every time the lzma_stream is reinitialized. With the xz tool,
    this happens when compressing multiple files.

 src/liblzma/common/stream_encoder.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 58f52c72f49562a08042da9a2f4bbdf4dd162d0c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-04-01 08:47:46 +0300

    Bumped version and liblzma soname to 5.0.2.

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

commit 162779682e01d15f0ce386ef7f40d1be05ad0053
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-04-01 08:47:20 +0300

    Updated NEWS for 5.0.2.

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

commit 45553f9b4b0175c292023010dc41520347004852
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-03-31 15:06:58 +0300

    Update INSTALL with another note about IRIX.

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

commit af9d48d5515eadef689b1ce9ffb91e4dbcbc7f35
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-03-31 12:22:55 +0300

    Tests: Add a new file to test empty LZMA2 streams.

 tests/files/README            |   4 ++++
 tests/files/good-1-lzma2-5.xz | Bin 0 -> 52 bytes
 2 files changed, 4 insertions(+)

commit d099ef9f517b59ab8e3b6f6aa0543c3643983470
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-03-31 11:54:48 +0300

    liblzma: Fix decoding of LZMA2 streams having no uncompressed data.
    
    The decoder considered empty LZMA2 streams to be corrupt.
    This shouldn't matter much with .xz files, because no encoder
    creates empty LZMA2 streams in .xz. This bug is more likely
    to cause problems in applications that use raw LZMA2 streams.

 src/liblzma/lzma/lzma2_decoder.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit df87249b26e79a75fd91041e85512944fc247b57
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-03-24 01:42:49 +0200

    Scripts: Better fix for xzgrep.
    
    Now it uses "grep -q".
    
    Thanks to Gregory Margo.

 src/scripts/xzgrep.in | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit 68c453e1c7b09dc9c7d2ef9d994c46f5b367f5d3
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-03-24 01:22:18 +0200

    Updated THANKS.

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

commit b441d39855516ae618faffd5156261b8b413394f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-03-24 01:21:32 +0200

    Scripts: Fix xzgrep -l.
    
    It didn't work at all. It tried to use the -q option
    for grep, but it appended it after "--". This works
    around it by redirecting to /dev/null. The downside
    is that this can be slower with big files compared
    to proper use of "grep -q".
    
    Thanks to Gregory Margo.

 src/scripts/xzgrep.in | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 82d5164839517f55daeadd9ee88c76425db30224
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-02-04 22:49:31 +0200

    xz: Clean up suffix.c.
    
    struct suffix_pair isn't needed in compresed_name()
    so get rid of it there.

 src/xz/suffix.c | 44 ++++++++++++++++++++------------------------
 1 file changed, 20 insertions(+), 24 deletions(-)

commit 6decc8b41882c2250f0450eb87b83c9fbf495e95
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-02-04 11:29:47 +0200

    xz: Check if the file already has custom suffix when compressing.
    
    Now "xz -S .test foo.test" refuses to compress the
    file because it already has the suffix .test. The man
    page had it documented this way already.

 src/xz/suffix.c | 9 +++++++++
 1 file changed, 9 insertions(+)

commit ecda90061df8d39399e707e5c76c2ec0a0f400e5
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-02-02 23:01:51 +0200

    Updated THANKS.

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

commit 0fda1ae5b1aa0a5c629a09e5228db8ba1cd0dd5f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-02-02 23:00:33 +0200

    Translations: Add Polish translation.
    
    Thanks to Jakub Bogusz.

 po/LINGUAS |   1 +
 po/pl.po   | 825 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 826 insertions(+)

commit 00be32978fedc5038748438bf685ac1713d1db83
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-02-02 22:24:00 +0200

    Updated THANKS.

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

commit 7232fcf96bf4bd5f9cd4fc6c93ca2912c665e004
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-01-28 20:26:38 +0200

    Bump package version and liblzma soname to 5.0.1.

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

commit 5fbce0b8d96dc96775aa0215e3581addc830e23d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-01-28 20:16:57 +0200

    Update NEWS for 5.0.1.

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

commit 03ebd1bbb314f9f204940219a835c883bf442475
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-01-26 12:19:08 +0200

    xz: Fix --force on setuid/setgid/sticky and multi-hardlink files.
    
    xz didn't compress setuid/setgid/sticky files and files
    with multiple hard links even with --force. This bug was
    introduced in 23ac2c44c3ac76994825adb7f9a8f719f78b5ee4.
    
    Thanks to Charles Wilson.

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

commit 7bd0a5e7ccc354f7c2e95c8bc27569c820f6a136
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-01-18 21:25:24 +0200

    Updated THANKS.

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

commit f71c4e16e913f660977526f0ef8d2acdf458d7c9
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2011-01-18 21:23:50 +0200

    Add alloc_size and malloc attributes to a few functions.
    
    Thanks to Cristian Rodríguez for the original patch.

 src/common/sysdefs.h        | 6 ++++++
 src/liblzma/common/common.h | 2 +-
 src/xz/util.h               | 5 +++--
 3 files changed, 10 insertions(+), 3 deletions(-)

commit 316cbe24465143edde8f6ffb7532834b7b2ea93f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-12-13 16:36:33 +0200

    Scripts: Fix gzip and bzip2 support in xzdiff.

 src/scripts/xzdiff.in | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 9311774c493c19deab51ded919dcd2e9c4aa2829
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-12-12 21:23:55 +0200

    Build: Enable ASM on DJGPP by default.

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

commit 4a42aaee282fc73b482581684d65110506d5efdd
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-12-12 16:09:42 +0200

    Updated THANKS.

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

commit ce56f63c41ee210e6308090eb6d49221fdf67d6c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-12-12 16:07:11 +0200

    Add missing PRIx32 and PRIx64 compatibility definitions.
    
    This fixes portability to systems that lack C99 inttypes.h.
    
    Thanks to Juan Manuel Guerrero.

 src/common/sysdefs.h | 9 +++++++++
 1 file changed, 9 insertions(+)

commit e6baedddcf54e7da049ebc49183565b99facd4c7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-12-12 14:50:04 +0200

    DOS-like: Treat \ and : as directory separators in addition to /.
    
    Juan Manuel Guerrero had fixed this in his XZ Utils port
    to DOS/DJGPP. The bug affects also Windows and OS/2.

 src/xz/suffix.c | 33 +++++++++++++++++++++++++++++----
 1 file changed, 29 insertions(+), 4 deletions(-)

commit b7afd3e22a8fac115b75c738d40d3eb1de7e286f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-12-07 18:52:04 +0200

    Translations: Fix Czech translation of "sparse file".
    
    Thanks to Petr Hubený and Marek Černocký.

 po/cs.po | 88 ++++++++++++++++++++++++++++++++--------------------------------
 1 file changed, 44 insertions(+), 44 deletions(-)

commit 3e564704bc6f463cb2db11e3f3f0dbd71d85992e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-11-15 14:28:26 +0200

    liblzma: Document the return value of lzma_lzma_preset().

 src/liblzma/api/lzma/lzma.h | 3 +++
 1 file changed, 3 insertions(+)

commit 2964d8d691ed92abdcf214888d79ad6d79774735
Author: Jonathan Nieder <jrnieder@gmail.com>
Date:   2010-11-12 15:22:13 -0600

    Simplify paths in generated API docs
    
    Currently the file list generated by Doxygen has src/ at the
    beginning of each path.  Paths like common/sysdefs.h and
    liblzma/api/lzma.h are easier to read without such a prefix.
    
    Builds from a separate build directory with
    
    	mkdir build
    	cd build
    	../configure
    	doxygen Doxyfile
    
    include an even longer prefix /home/someone/src/xz/src; this
    patch has the nice side-effect of eliminating that prefix, too.
    
    Fixes: http://bugs.debian.org/572273

 Doxyfile.in | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 37c25658efd25b034266daf87cd381d20d1df776
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-26 15:48:48 +0300

    Build: Copy the example programs to $docdir/examples.
    
    The example programs by Daniel Mealha Cabrita were included
    in the git repository, but I had forgot to add them to
    Makefile.am. Thus, they didn't get included in the source
    package at all by "make dist".

 Makefile.am        | 5 +++++
 windows/build.bash | 3 ++-
 2 files changed, 7 insertions(+), 1 deletion(-)

commit e45929260cd902036efd40c5610a8d0a50d5712b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-23 17:25:52 +0300

    Build: Fix mydist rule when .git doesn't exist.

 Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit 6e1326fcdf6b6209949be57cfe3ad4b781b65168
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-23 14:15:35 +0300

    Add NEWS for 5.0.0.

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

commit b667a3ef6338a2c1db7b7706b1f6c99ea392221c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-23 14:02:53 +0300

    Bump version to 5.0.0 and liblzma version-info to 5:0:0.

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

commit 8c947e9291691629714dafb4536c718b6cc24fbd
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-23 12:30:54 +0300

    liblzma: Make lzma_code() check the reserved members in lzma_stream.
    
    If any of the reserved members in lzma_stream are non-zero
    or non-NULL, LZMA_OPTIONS_ERROR is returned. It is possible
    that a new feature in the future is indicated by just setting
    a reserved member to some other value, so the old liblzma
    version need to catch it as an unsupported feature.

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

commit e61d85e082743ebd2dd0ff28fc0a82482ede0538
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-23 12:26:33 +0300

    Windows: Use MinGW's stdio functions.
    
    The non-standard ones from msvcrt.dll appear to work
    most of the time with XZ Utils, but there are some
    corner cases where things may go very wrong. So it's
    good to use the better replacements provided by
    MinGW(-w64) runtime.

 src/common/sysdefs.h | 5 +++++
 1 file changed, 5 insertions(+)

commit 23e23f1dc029146714c9a98313ab3ea93d71a2fc
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-23 12:21:32 +0300

    liblzma: Use 512 as INDEX_GROUP_SIZE.
    
    This lets compiler use shifting instead of 64-bit division.

 src/liblzma/common/index.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 613939fc82603b75b59eee840871a05bc8dd08e0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-23 12:20:11 +0300

    liblzma: A few ABI tweaks to reserve space in structures.

 src/liblzma/api/lzma/base.h         | 7 ++++++-
 src/liblzma/api/lzma/lzma.h         | 4 ++--
 src/liblzma/api/lzma/stream_flags.h | 4 ----
 3 files changed, 8 insertions(+), 7 deletions(-)

commit 68b83f252df3d27480a9f6f03445d16f6506fef1
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-21 23:16:11 +0300

    xz: Make sure that message_strm() can never return NULL.

 src/xz/message.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

commit d09c5753e33ff96ee57edb6d1e98e34041203695
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-21 23:06:31 +0300

    liblzma: Update the comments in the API headers.
    
    Adding support for LZMA_FINISH for Index encoding and
    decoding needed tiny additions to the relevant .c files too.

 src/liblzma/api/lzma.h              |  4 +--
 src/liblzma/api/lzma/base.h         | 38 +++++++++++++--------------
 src/liblzma/api/lzma/bcj.h          |  4 +--
 src/liblzma/api/lzma/block.h        |  4 +--
 src/liblzma/api/lzma/container.h    | 26 ++++++++++++-------
 src/liblzma/api/lzma/filter.h       | 51 ++++++++++++++++++-------------------
 src/liblzma/api/lzma/hardware.h     |  3 +--
 src/liblzma/api/lzma/index.h        | 28 ++++++++++++--------
 src/liblzma/api/lzma/index_hash.h   |  2 +-
 src/liblzma/api/lzma/lzma.h         | 46 ++++++++++++++++++++++-----------
 src/liblzma/api/lzma/stream_flags.h |  4 +--
 src/liblzma/api/lzma/vli.h          | 31 +++++++++++-----------
 src/liblzma/common/index_decoder.c  |  1 +
 src/liblzma/common/index_encoder.c  |  1 +
 14 files changed, 136 insertions(+), 107 deletions(-)

commit 33c1c0e102eb529588503b8beea0903a45488fad
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-19 12:08:30 +0300

    Update INSTALL.generic.

 INSTALL.generic | 99 ++++++++++++++++++++++++++++++++++++++++++++++-----------
 1 file changed, 81 insertions(+), 18 deletions(-)

commit 0076e03641f201c4b77dddd5a6db5880be19a78c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-19 11:44:37 +0300

    Clean up a few FIXMEs and TODOs.
    
    lzma_chunk_size() was commented out because it is
    currently useless.

 src/liblzma/common/filter_encoder.c | 2 ++
 src/liblzma/common/filter_encoder.h | 4 ++--
 src/liblzma/lzma/lzma2_decoder.c    | 1 -
 src/liblzma/lzma/lzma_decoder.c     | 4 ++--
 src/liblzma/lzma/lzma_encoder.c     | 2 +-
 src/xz/message.h                    | 2 +-
 6 files changed, 8 insertions(+), 7 deletions(-)

commit ce34ec4f54ff8b753da236f371ad8dd23c8135c9
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-19 10:21:08 +0300

    Update docs.

 INSTALL    | 192 +++++++++++++++++++++++++++++++++++++++++--------------------
 PACKAGERS  | 104 +++++++++------------------------
 TODO       |  17 ++++--
 dos/README |   2 +-
 4 files changed, 172 insertions(+), 143 deletions(-)

commit f0fa880d247e73264d2c04fe31fb3412318a0026
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-12 15:13:30 +0300

    xz: Avoid raise() also on OpenVMS.
    
    This is similar to DOS/DJGPP that killing the program
    with a signal will print a backtrace or a similar message.

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

commit ac462b1c47c451f5c62e428306314c4bdad8ae7f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-11 21:26:19 +0300

    xz: Avoid SA_RESTART for portability reasons.
    
    SA_RESTART is not as portable as I had hoped. It's missing
    at least from OpenVMS, QNX, and DJGPP). Luckily we can do
    fine without SA_RESTART.

 src/xz/message.c | 38 +++++++++++++++-----------------------
 src/xz/message.h |  4 ++++
 src/xz/signals.c |  6 ++++++
 3 files changed, 25 insertions(+), 23 deletions(-)

commit d52b411716a614c202e89ba732492efb9916cd3f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-10 17:58:58 +0300

    xz: Use "%"PRIu32 instead of "%d" in a format string.

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

commit ae74d1bdeb075c3beefe76e1136c5741804e7e91
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-10 17:43:26 +0300

    test_files.sh: Fix the first line.
    
    For some reason this prevented running the test only
    on OS/2 and even on that it broke only recently.
    
    Thanks to Elbert Pol.

 tests/test_files.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d492b80ddd6f9a13419de6d102df7374d8f448e8
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-10 16:49:01 +0300

    lzmainfo: Use "%"PRIu32 instead of "%u" for uint32_t.

 src/lzmainfo/lzmainfo.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 825e859a9054bd91202e5723c41a17e72f63040a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-10 16:47:01 +0300

    lzmainfo: Use fileno(stdin) instead of STDIN_FILENO.

 src/lzmainfo/lzmainfo.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit acbc4cdecbeec2a4dfaac04f185ece49b2ff17c8
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-09 23:20:51 +0300

    lzmainfo: Use setmode() on DOS-like systems.

 src/lzmainfo/lzmainfo.c | 9 +++++++++
 1 file changed, 9 insertions(+)

commit ef364d3abc5647111c5424ea0d83a567e184a23b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-09 21:51:03 +0300

    OS/2 and DOS: Be less verbose on signals.
    
    Calling raise() to kill xz when user has pressed C-c
    is a bit verbose on OS/2 and DOS/DJGPP. Instead of
    calling raise(), set only the exit status to 1.

 src/xz/signals.c | 7 +++++++
 1 file changed, 7 insertions(+)

commit 5629c4be07b6c67e79842b2569da1cedc9c0d69a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-09 19:28:49 +0300

    DOS: Update the Makefile, config.h and README.
    
    This is now simpler and builds only xz.exe.

 dos/Makefile | 211 +++++++++++++++--------------------------------------------
 dos/README   |  73 +++++++--------------
 dos/config.h |  45 ++++---------
 3 files changed, 86 insertions(+), 243 deletions(-)

commit f25a77e6b9bc48a243ddfbbd755b7960eec7e0ac
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-09 18:57:55 +0300

    Windows: Put some license info into README-Windows.txt.

 windows/README-Windows.txt | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit e75100f549f85d231df25c07aa94d63e78e2d668
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-09 18:57:04 +0300

    Windows: Fix a diagnostics bug in build.bash.

 windows/build.bash | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit efeb998a2b1025df1c1d202cc7d21d866cd1c336
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-09 13:02:15 +0300

    lzmainfo: Add Windows resource file.

 src/lzmainfo/Makefile.am        |  9 +++++++++
 src/lzmainfo/lzmainfo_w32res.rc | 12 ++++++++++++
 2 files changed, 21 insertions(+)

commit 389d418445f1623593dfdbba55d52fbb6d1205f5
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-09 12:57:25 +0300

    Add missing public domain notice to lzmadec_w32res.rc.

 src/xzdec/lzmadec_w32res.rc | 7 +++++++
 1 file changed, 7 insertions(+)

commit 6389c773a4912dd9f111256d74ba1605230a7957
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-09 12:52:12 +0300

    Windows: Update common_w32res.rc.

 src/common/common_w32res.rc | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

commit 71275457ca24c9b01721f5cfc3638cf094daf454
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-09 12:27:08 +0300

    Windows: Make build.bash prefer MinGW-w32 over MinGW.
    
    This is simply for licensing reasons. The 64-bit version
    will be built with MinGW-w64 anyway (at least for now),
    so using it also for 32-bit build allows using the same
    copyright notice about the MinGW-w64/w32 runtime.
    
    Note that using MinGW would require a copyright notice too,
    because its runtime is not in the public domain either even
    though MinGW's home page claims that it is public domain.
    See <http://marc.info/?l=mingw-users&m=126489506214078>.

 windows/build.bash | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit 3ac35719d8433af937af6491383d4a50e343099b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-09 11:33:21 +0300

    Windows: Copy COPYING-Windows.txt (if it exists) to the package.
    
    Also, put README-Windows.txt to the doc directory like
    the other documentation files.

 windows/build.bash | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

commit 7b5db576fd7a4a67813b8437a9ccd4dbc94bbaae
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-08 21:42:37 +0300

    Windows: Fix build.bash again.
    
    630a8beda34af0ac153c8051b1bf01230558e422 wasn't good.

 windows/build.bash | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit d3cd7abe85ec7c2f46cf198b15c00d5d119df3dd
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-08 16:53:20 +0300

    Use LZMA_VERSION_STRING instead of PACKAGE_VERSION.
    
    Those are the same thing, and the former makes it a bit
    easier to build the code with other build systems, because
    one doesn't need to update the version number into custom
    config.h.
    
    This change affects only lzmainfo. Other tools were already
    using LZMA_VERSION_STRING.

 src/lzmainfo/lzmainfo.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 084c60d318f2dbaef4078d9b100b4a373d0c3a7f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-08 15:59:25 +0300

    configure.ac: Remove two unused defines.

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

commit 11f51b6714357cb67ec7e56ed9575c199b5581fe
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-08 15:32:29 +0300

    Make tests accommodate missing xz or xzdec.

 tests/test_compress.sh | 47 ++++++++++++++++++++++++++++++-----------------
 tests/test_files.sh    | 28 ++++++++++++++++++++++++++--
 2 files changed, 56 insertions(+), 19 deletions(-)

commit b1c7368f95e93ccdefdd0748e04398c26766f47f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-08 15:25:45 +0300

    Build: Add options to disable individual command line tools.

 configure.ac            | 38 ++++++++++++++++++++++++++++++
 src/Makefile.am         | 15 +++++++++++-
 src/scripts/Makefile.am | 62 +++++++++++++++++++++----------------------------
 src/xz/Makefile.am      |  6 ++++-
 src/xzdec/Makefile.am   | 12 ++++++++--
 5 files changed, 93 insertions(+), 40 deletions(-)

commit 630a8beda34af0ac153c8051b1bf01230558e422
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-07 00:44:53 +0300

    Windows: Make build.bash work without --enable-dynamic=no.

 windows/build.bash | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit f9907503f882a745dce9d84c2968f6c175ba966a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-05 14:13:16 +0300

    Build: Remove the static/dynamic tricks.
    
    Most distros want xz linked against shared liblzma, so
    it doesn't help much to require --enable-dynamic for that.
    Those who want to avoid PIC on x86-32 to get better
    performance, can still do it e.g. by using --disable-shared
    to compile xz and then another pass to compile shared liblzma.
    
    Part of these static/dynamic tricks were needed for Windows
    in the past. Nowadays we rely on GCC and binutils to do the
    right thing with auto-import. If the Autotooled build system
    needs to support some other toolchain on Windows in the future,
    this may need some rethinking.

 configure.ac             | 74 ------------------------------------------------
 debug/Makefile.am        |  5 +---
 src/lzmainfo/Makefile.am |  4 +--
 src/xz/Makefile.am       |  4 +--
 src/xzdec/Makefile.am    |  4 +--
 tests/Makefile.am        |  5 +---
 6 files changed, 5 insertions(+), 91 deletions(-)

commit fda4724d8114fccfa31c1839c15479f350c2fb4c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-05 12:18:58 +0300

    configure.ac: Silence a warning from Autoconf 2.68.

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

commit 80b5675fa62c87426fe86f8fcd20feeabc4361b9
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-04 19:43:01 +0300

    A few more languages files to the xz man page.
    
    Thanks to Jonathan Nieder.

 src/xz/xz.1 | 45 ++++++++++++++++++++++++---------------------
 1 file changed, 24 insertions(+), 21 deletions(-)

commit f9722dbeca4dc4c43cfd15d122dafaac50b0a0bb
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-02 12:07:33 +0300

    Update the FAQ.

 doc/faq.txt | 104 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 file changed, 100 insertions(+), 4 deletions(-)

commit 61ae593661e8dc402394e84d567ca2044a51572b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-10-02 11:38:20 +0300

    liblzma: Small fixes to comments in the API headers.

 src/liblzma/api/lzma/lzma.h | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

commit 9166682dc601fd42c1b9510572e3f917d18de504
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-28 11:40:12 +0300

    Create the PDF versions of the man pages better.

 Makefile.am          | 14 +++++++------
 build-aux/manconv.sh | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 66 insertions(+), 6 deletions(-)

commit 17d3c61edd35de8fa884944fc70d1db86daa5dd8
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-28 10:59:53 +0300

    Move version.sh to build-aux.

 Makefile.am          |  4 ++--
 build-aux/version.sh | 24 ++++++++++++++++++++++++
 configure.ac         |  2 +-
 version.sh           | 24 ------------------------
 windows/build.bash   |  2 +-
 5 files changed, 28 insertions(+), 28 deletions(-)

commit 84af9d8770451339a692e9b70f96cf56156a6069
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-28 10:53:02 +0300

    Update .gitignore.

 .gitignore | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

commit 31575a449ac64c523da3bab8d0c0b522cdc7c780
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-28 01:17:14 +0300

    Fix accomodate -> accommodate on the xz man page.

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

commit cec0ddc8ec4ce81685a51998b978e22167e461f9
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-27 23:29:34 +0300

    Major man page updates.
    
    Lots of content was updated on the xz man page.
    
    Technical improvements:
      - Start a new sentence on a new line.
      - Use fairly short lines.
      - Use constant-width font for examples (where supported).
      - Some minor cleanups.
    
    Thanks to Jonathan Nieder for some language fixes.

 src/lzmainfo/lzmainfo.1 |   25 +-
 src/scripts/xzdiff.1    |   15 +-
 src/scripts/xzgrep.1    |   11 +-
 src/scripts/xzless.1    |   13 +-
 src/scripts/xzmore.1    |    9 +-
 src/xz/xz.1             | 1964 ++++++++++++++++++++++++++++++++---------------
 src/xzdec/xzdec.1       |   39 +-
 7 files changed, 1435 insertions(+), 641 deletions(-)

commit 075257ab0416a0603be930082e31a5703e4ba345
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-26 18:10:31 +0300

    Fix the preset -3e.
    
    depth=0 was missing.

 src/liblzma/lzma/lzma_encoder_presets.c | 1 +
 1 file changed, 1 insertion(+)

commit 2577da9ebdba13fbe99ae5ee8bde35f7ed60f6d1
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-23 14:03:10 +0300

    Add translations.bash and translation notes to README.
    
    translations.bash prints some messages from xz, which
    hopefully makes it a bit easier to test translations.

 README                 |  96 +++++++++++++++++++++++++++++++++++++++++++++--
 debug/translation.bash | 100 +++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 192 insertions(+), 4 deletions(-)

commit a3c5997c57e5b1a20aae6d1071b584b4f17d0b23
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-17 22:14:30 +0300

    xz: Update the Czech translation.
    
    Thanks to Marek Černocký.

 po/cs.po | 202 +++++++++++++++++++++++++++++++++++++++++----------------------
 1 file changed, 131 insertions(+), 71 deletions(-)

commit a1766af582dc23fddd9da1eeb4b9d61e3eb4c2e6
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-16 23:40:41 +0300

    xz: Add Italian translation.
    
    Thanks to Milo Casagrande and Lorenzo De Liso.

 THANKS     |   2 +
 po/LINGUAS |   1 +
 po/it.po   | 902 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 905 insertions(+)

commit 21088018554e2b0e02914205377ceb6e34a090bd
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-15 00:34:13 +0300

    xz: Edit a translators comment.

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

commit be16e28ece1b492b8f93382b7fa1cc4da23c6ff6
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-14 22:47:14 +0300

    xz: Add German translation.
    
    Thanks to Andre Noll.

 THANKS     |   1 +
 po/LINGUAS |   1 +
 po/de.po   | 903 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 905 insertions(+)

commit e23ea74f3240e6b69683f9e69d1716e0f9e9092b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-10 14:30:25 +0300

    Updated README.

 README | 2 --
 1 file changed, 2 deletions(-)

commit 8dad2fd69336985adb9f774fa96dc9c0efcb5a71
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-10 14:30:07 +0300

    Updated INSTALL.

 INSTALL | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit 0b5f07fe3728c27cce416ddc40f7e4803ae96ac2
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-10 14:26:20 +0300

    Updated the git repository address in ChangeLog.

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

commit a8760203f93a69bc39fd14520a6e9e7b7d70be06
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-10 14:09:33 +0300

    xz: Add a comment to translators about "literal context bits".

 src/xz/message.c | 4 ++++
 1 file changed, 4 insertions(+)

commit bb0b1004f83cdc4d309e1471c2ecaf9f95ce60c5
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-10 10:30:33 +0300

    xz: Multiple fixes.
    
    The code assumed that printing numbers with thousand separators
    and decimal points would always produce only US-ASCII characters.
    This was used for buffer sizes (with snprintf(), no overflows)
    and aligning columns of the progress indicator and --list. That
    assumption was wrong (e.g. LC_ALL=fi_FI.UTF-8 with glibc), so
    multibyte character support was added in this commit. The old
    way is used if the operating system doesn't have enough multibyte
    support (e.g. lacks wcwidth()).
    
    The sizes of buffers were increased to accomodate multibyte
    characters. I don't know how big they should be exactly, but
    they aren't used for anything critical, so it's not too bad.
    If they still aren't big enough, I hopefully get a bug report.
    snprintf() takes care of avoiding buffer overflows.
    
    Some static buffers were replaced with buffers allocated on
    stack. double_to_str() was removed. uint64_to_str() and
    uint64_to_nicestr() now share the static buffer and test
    for thousand separator support.
    
    Integrity check names "None" and "Unknown-N" (2 <= N <= 15)
    were marked to be translated. I had forgot these, plus they
    wouldn't have worked correctly anyway before this commit,
    because printing tables with multibyte strings didn't work.
    
    Thanks to Marek Černocký for reporting the bug about
    misaligned table columns in --list output.

 configure.ac                    |   1 +
 m4/tuklib_mbstr.m4              |  30 ++++++
 src/common/tuklib_mbstr.h       |  66 +++++++++++++
 src/common/tuklib_mbstr_fw.c    |  31 ++++++
 src/common/tuklib_mbstr_width.c |  64 +++++++++++++
 src/xz/Makefile.am              |   4 +-
 src/xz/list.c                   | 205 +++++++++++++++++++++++++++-------------
 src/xz/message.c                |  56 +++++++----
 src/xz/message.h                |  10 +-
 src/xz/private.h                |   1 +
 src/xz/util.c                   | 136 +++++++++-----------------
 src/xz/util.h                   |   7 --
 12 files changed, 424 insertions(+), 187 deletions(-)

commit 639f8e2af33cf8a184d59ba56b6df7c098679d61
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-08 08:49:22 +0300

    Update the Czech translation.
    
    Thanks to Marek Černocký.

 po/cs.po | 655 +++++++++++++++++++++++++++++++++++++++++++--------------------
 1 file changed, 454 insertions(+), 201 deletions(-)

commit 41bc9956ebfd7c86777d33676acf34c45e7ca7c7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-07 12:31:40 +0300

    xz: Add a note to translators.

 src/xz/hardware.c | 2 ++
 1 file changed, 2 insertions(+)

commit 77a7746616e555fc08028e883a56d06bf0088b81
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-07 10:42:13 +0300

    Fix use of N_() and ngettext().
    
    I had somehow thought that N_() is usually used
    as shorthand for ngettext().
    
    This also fixes a missing \n from a call to ngettext().

 src/common/tuklib_gettext.h | 4 ++--
 src/xz/list.c               | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

commit e6ad39335842343e622ab51207d1d3cb9caad801
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-06 19:43:12 +0300

    Add missing files to POTFILES.in.

 po/POTFILES.in | 3 +++
 1 file changed, 3 insertions(+)

commit 58f55131820d2e08a1a6beb9ec0ee2378044eb30
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-06 10:16:24 +0300

    xz: Improve a comment.

 src/xz/file_io.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit bcb1b898341f7073f51660d7052d7ed6c5461a66
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-05 21:34:29 +0300

    xz: Update the comment about NetBSD in file_io.c.
    
    Thanks to Joerg Sonnenberger.

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

commit da014d55972f5addbf6b4360d3d8ed2ef4282170
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-05 21:11:33 +0300

    xz: Use an array instead of pointer for stdin_filename.
    
    Thanks Joerg Sonnenberger.

 src/xz/args.c | 2 +-
 src/xz/args.h | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 8c7d3d1a0781c296c6b6e2465becaffd2132f7ee
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-05 12:16:17 +0300

    xz: Hopefully ease translating the messages in list.c.

 src/xz/list.c | 33 +++++++++++++++++++++++----------
 1 file changed, 23 insertions(+), 10 deletions(-)

commit ef840950ad99cf2955c754875af0e01acf125079
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-04 23:14:44 +0300

    xz: Fix grammar.

 src/xz/options.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit c46afd6edc04ea140db6c59e8486f5707c810c13
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-04 23:12:20 +0300

    xz: Use lzma_lzma_preset() to initialize the options structure.

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

commit 8fd3ac046d0b1416a2094fecc456d9e0f4d5d065
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-04 22:16:28 +0300

    Don't set lc=4 with --extreme.
    
    This should reduce the cases where --extreme makes
    compression worse. On the other hand, some other
    files may now benefit slightly less from --extreme.

 src/liblzma/lzma/lzma_encoder_presets.c | 1 -
 1 file changed, 1 deletion(-)

commit 474bac0c33e94aeaca8ada17ab19972b1424bc2b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-04 22:10:32 +0300

    xz: Minor improvements to --help and --long-help.

 src/xz/message.c | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

commit 373ee26f955617295c5c537b04a153a1969140d2
Author: Jonathan Nieder <jrnieder@gmail.com>
Date:   2010-09-03 16:49:15 -0500

    Adjust memory limits in test_compress.sh
    
    Testing compression at level -4 now requires 48 MiB of free store at
    compression time and 5 MiB at decompression time.
    
    Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>

 tests/test_compress.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2fce9312f36727ea82f3430cc5d3a7d243c5f087
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-03 15:54:40 +0300

    xz: Make -vv show also decompressor memory usage.

 src/xz/coder.c | 7 +++++++
 1 file changed, 7 insertions(+)

commit b4b1cbcb53624ab832f8b3189c74450dc7ea29b6
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-03 15:13:12 +0300

    Tweak the compression presets -0 .. -5.
    
    "Extreme" mode might need some further tweaking still.
    Docs were not updated yet.

 src/liblzma/lzma/lzma_encoder_presets.c | 29 +++++++++++++++++++----------
 1 file changed, 19 insertions(+), 10 deletions(-)

commit 77fe5954cd3d10fb1837372684cbc133b56b6a87
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-03 12:28:41 +0300

    liblzma: Adjust default depth calculation for HC3 and HC4.
    
    It was 8 + nice_len / 4, now it is 4 + nice_len / 4.
    This allows faster settings at lower nice_len values,
    even though it seems that I won't use automatic depth
    calcuation with HC3 and HC4 in the presets.

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

commit fce69059cf901ce8075a78c7607d591f144a3b5a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-03 11:11:25 +0300

    xz: Make --help two lines shorter.
    
    At least for now, the --help option doesn't list any
    options that take arguments, so "Mandatory arguments to..."
    can be omitted.

 src/xz/message.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

commit a848e47ced6e5e2a564b5c454b2f5a19c2f40298
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-02 19:22:35 +0300

    xz: Make setting a preset override a custom filter chain.
    
    This is more logical behavior than ignoring preset level
    options once a custom filter chain has been specified.

 src/xz/coder.c | 9 +++++++++
 1 file changed, 9 insertions(+)

commit b3ff7ba044eaeab3e424d7b51fe914daf681b1a3
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-09-02 19:09:57 +0300

    xz: Always warn if adjusting dictionary size due to memlimit.

 src/xz/coder.c | 28 +++++++++-------------------
 1 file changed, 9 insertions(+), 19 deletions(-)

commit d5653ba8a1ea9c00de4fddc617aba3c51e18139d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-08-10 11:04:30 +0300

    Fix test_compress.sh.
    
    It broke when --memory option was removed from xzdec.
    
    Thanks to Jonathan Nieder.

 tests/test_compress.sh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 792331bdee706aa852a78b171040ebf814c6f3ae
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-08-07 20:45:18 +0300

    Disable the memory usage limiter by default.
    
    For several people, the limiter causes bigger problems that
    it solves, so it is better to have it disabled by default.
    Those who want to have a limiter by default need to enable
    it via the environment variable XZ_DEFAULTS.
    
    Support for environment variable XZ_DEFAULTS was added. It is
    parsed before XZ_OPT and technically identical with it. The
    intended uses differ quite a bit though; see the man page.
    
    The memory usage limit can now be set separately for
    compression and decompression using --memlimit-compress and
    --memlimit-decompress. To set both at once, -M or --memlimit
    can be used. --memory was retained as a legacy alias for
    --memlimit for backwards compatibility.
    
    The semantics of --info-memory were changed in backwards
    incompatible way. Compatibility wasn't meaningful due to
    changes in the memory usage limiter functionality.
    
    The memory usage limiter info is no longer shown at the
    bottom of xz --long -help.
    
    The memory usage limiter support for removed completely from xzdec.
    
    xz's man page was updated to match the above changes. Various
    unrelated fixes were also made to the man page.

 src/xz/args.c     |  87 +++++++++-----
 src/xz/coder.c    |   8 +-
 src/xz/hardware.c |  96 +++++++++------
 src/xz/hardware.h |  23 ++--
 src/xz/list.c     |   2 +-
 src/xz/message.c  |  39 ++-----
 src/xz/message.h  |   4 -
 src/xz/xz.1       | 341 ++++++++++++++++++++++++++++++++++--------------------
 src/xzdec/xzdec.1 |  45 +------
 src/xzdec/xzdec.c | 176 +---------------------------
 10 files changed, 373 insertions(+), 448 deletions(-)

commit 4a45dd4c39f75d25c7a37b6400cb24d4010ca801
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-08-06 20:22:16 +0300

    Add missing const to a global constant in xz.

 src/xz/args.c | 2 +-
 src/xz/args.h | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 01aa4869cb220b7fdad6d1acbabb2233045daa8f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-07-28 11:44:55 +0300

    Language fixes for man pages.
    
    Thanks to A. Costa and Jonathan Nieder.

 src/lzmainfo/lzmainfo.1 | 4 ++--
 src/xz/xz.1             | 6 +++---
 2 files changed, 5 insertions(+), 5 deletions(-)

commit ce1f0deafe8504e1492bf1b1efb3e3ec950b1a2b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-07-27 20:47:12 +0300

    Windows: Add a note about building a Git repository snapshot

 windows/INSTALL-Windows.txt | 9 +++++++++
 1 file changed, 9 insertions(+)

commit 507a4a4dea1e5462f12f7ed4b076c34e02054a38
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-07-27 20:45:03 +0300

    Windows: build.sh is a bash script so name it correctly.

 INSTALL                     |   2 +-
 windows/INSTALL-Windows.txt |   6 +-
 windows/build.bash          | 189 ++++++++++++++++++++++++++++++++++++++++++++
 windows/build.sh            | 189 --------------------------------------------
 4 files changed, 193 insertions(+), 193 deletions(-)

commit b1cbfd40f049a646a639eb78a3e41e9e3ef73339
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-07-27 20:27:32 +0300

    Windows: Don't strip liblzma.a too much.

 windows/build.sh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit a540198ffb25fad36380c5e92ac20c2d28eec46a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-07-13 20:07:26 +0300

    Updated THANKS.

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

commit bab0f01ed931f606b4675aa9f9331a17cec09bad
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-07-13 19:55:50 +0300

    Add two simple example programs.
    
    Hopefully these help a bit when learning the basics
    of liblzma API. I plan to write detailed examples about
    both basic and advanced features with lots of comments,
    but these two examples are good have right now.
    
    The examples were written by Daniel Mealha Cabrita. Thanks.

 doc/examples/xz_pipe_comp.c   | 127 ++++++++++++++++++++++++++++++++++++++++++
 doc/examples/xz_pipe_decomp.c | 115 ++++++++++++++++++++++++++++++++++++++
 2 files changed, 242 insertions(+)

commit c15c42abb3c8c6e77c778ef06c97a4a10b8b5d00
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-06-15 14:06:29 +0300

    Add --no-adjust.

 src/xz/args.c    |  6 ++++++
 src/xz/coder.c   |  8 ++------
 src/xz/coder.h   |  4 ++++
 src/xz/message.c |  6 +++++-
 src/xz/xz.1      | 13 +++++++++++--
 5 files changed, 28 insertions(+), 9 deletions(-)

commit 2130926dd1c839280358172dfadd8d3054bde2b4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-06-11 21:51:32 +0300

    Updated THANKS.

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

commit bc612d0e0c9e4504c59d49168e87a7ae3e458443
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-06-11 21:48:32 +0300

    Clarify the description of the default memlimit in the man page.
    
    Thanks to Denis Excoffier.

 src/xz/xz.1 | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit e1b6935d60a00405e6b5b455a3426d2248cc926c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-06-11 21:43:28 +0300

    Fix string to uint64_t conversion.
    
    Thanks to Denis Excoffier for the bug report.

 src/xz/util.c     | 10 ++++++++--
 src/xzdec/xzdec.c | 13 +++++++++++--
 2 files changed, 19 insertions(+), 4 deletions(-)

commit 3e49c8acb0f5312948eddb2342dbb5802d4571d0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-06-11 10:40:28 +0300

    Put the git commit to the filename in mydist rule.

 Makefile.am | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit d8b41eedce486d400f701b757b7b5e4e32276618
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-06-02 23:13:55 +0300

    Fix compiling with -Werror.

 src/xz/message.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit b5fbab6123a39c9a55cd5d7af410e9aae067d5f8
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-06-02 23:09:22 +0300

    Silence a bogus Valgrind warning.
    
    When using -O2 with GCC, it liked to swap two comparisons
    in one "if" statement. It's otherwise fine except that
    the latter part, which is seemingly never executed, got
    executed (nothing wrong with that) and then triggered
    warning in Valgrind about conditional jump depending on
    uninitialized variable. A few people find this annoying
    so do things a bit differently to avoid the warning.

 src/liblzma/lz/lz_encoder.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 29a7b250e685852f2f97615493ec49acaf528623
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-06-02 21:32:12 +0300

    Fix a Windows-specific FIXME in signal handling code.

 src/xz/main.c    | 40 +++++++++++++++++++++++++++++++++++-----
 src/xz/private.h |  5 +++++
 src/xz/signals.c | 16 ++++++++--------
 3 files changed, 48 insertions(+), 13 deletions(-)

commit e89d987056cee7d4e279be3ef3a6cc690bfc0e6d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-06-02 17:46:58 +0300

    Adjust SA_RESTART workaround.
    
    I want to get a bug report if something else than
    DJGPP lacks SA_RESTART.

 src/xz/message.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

commit e243145c84ab5c3be8259fd486ead0de5235b3f0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-06-01 16:02:30 +0300

    xz man page updates.
    
    - Concatenating .xz files and padding
    - List mode
    - Robot mode
    - A few examples (but many more are needed)

 src/xz/xz.1 | 385 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 file changed, 366 insertions(+), 19 deletions(-)

commit ce6dc3c0a891f23a862f80ec08d3b6f0beb2a562
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-06-01 15:51:44 +0300

    Major update to xz --list.

 src/xz/list.c | 652 ++++++++++++++++++++++++++++++++++++++++++----------------
 1 file changed, 471 insertions(+), 181 deletions(-)

commit 905e54804a899e4ad526d38fdba7e803ab9b71bd
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-06-01 14:13:03 +0300

    Rename message_filters_get() to message_filters_to_str().

 src/xz/message.c | 4 ++--
 src/xz/message.h | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

commit 4b346ae8af20045027ae5efb068c6d69da3324d2
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-06-01 14:09:12 +0300

    Fix a comment.

 src/liblzma/api/lzma/index.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 07dc34f6da45c9ab757dad7fd5eef522ad27d296
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-05-27 16:17:42 +0300

    Fix lzma_block_compressed_size().

 src/liblzma/common/block_util.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 44d70cb154225e47eebf15a3cfbdf3794cbb4593
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-05-27 14:32:51 +0300

    Take Cygwin into account in some #if lines.
    
    This change is no-op, but good to have just in case
    for the future.

 src/xz/signals.c | 2 +-
 src/xz/signals.h | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

commit a334348dc02803241cf4e0a539eecdc0e7ad2cc7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-05-27 13:42:44 +0300

    Remove references to the Subblock filter in xz and tests.
    
    Thanks to Jonathan Nieder.

 src/xz/message.c          |  9 ---------
 tests/test_filter_flags.c | 23 -----------------------
 2 files changed, 32 deletions(-)

commit 70e5e2f6a7084e6af909deee88ceac2f6efa7893
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-05-27 13:35:36 +0300

    Remove unused chunk_size.c.
    
    Thanks to Jonathan Nieder for the reminder.

 src/liblzma/common/chunk_size.c | 67 -----------------------------------------
 1 file changed, 67 deletions(-)

commit 01a414eaf4be6352c06b48001b041b47e8202faa
Author: Jonathan Nieder <jrnieder@gmail.com>
Date:   2010-05-27 02:31:33 -0500

    Use my_min() instead of MIN() in src/xz/list.c
    
    This should have been done in
    920a69a8d8e4203c5edddd829d932130eac188ea.

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

commit 920a69a8d8e4203c5edddd829d932130eac188ea
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-05-26 10:36:46 +0300

    Rename MIN() and MAX() to my_min() and my_max().
    
    This should avoid some minor portability issues.

 debug/full_flush.c                             |  2 +-
 debug/sync_flush.c                             |  2 +-
 src/common/sysdefs.h                           | 12 +++++-------
 src/liblzma/common/block_buffer_encoder.c      |  2 +-
 src/liblzma/common/common.c                    |  2 +-
 src/liblzma/common/stream_buffer_encoder.c     |  2 +-
 src/liblzma/delta/delta_encoder.c              |  2 +-
 src/liblzma/lz/lz_decoder.c                    |  7 ++++---
 src/liblzma/lz/lz_decoder.h                    |  2 +-
 src/liblzma/lz/lz_encoder.c                    |  2 +-
 src/liblzma/lz/lz_encoder.h                    |  2 +-
 src/liblzma/lz/lz_encoder_mf.c                 |  4 ++--
 src/liblzma/lzma/lzma2_encoder.c               |  2 +-
 src/liblzma/lzma/lzma_encoder_optimum_fast.c   |  2 +-
 src/liblzma/lzma/lzma_encoder_optimum_normal.c | 14 +++++++-------
 src/xz/args.c                                  |  3 ++-
 16 files changed, 31 insertions(+), 31 deletions(-)

commit 019ae27c24d0c694545a6a46f8b9fb552198b015
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-05-26 10:30:20 +0300

    Fix compilation of debug/known_sizes.c.

 debug/known_sizes.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 98a4856a6ea84f79c790057a6eb89a25bc45b074
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-05-26 10:28:54 +0300

    Remove references to Subblock filter in debug/sync_flush.c.

 debug/sync_flush.c | 13 -------------
 1 file changed, 13 deletions(-)

commit 703d2c33c095c41ae0693ee8c27c45e3847e4535
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-05-26 10:16:57 +0300

    Better #error message.

 src/common/sysdefs.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit d8a55c48b39703dd83f11089ad01e1ff2ac102e0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-05-26 09:55:47 +0300

    Remove the Subblock filter code for now.
    
    The spec isn't finished and the code didn't compile anymore.
    It won't be included in XZ Utils 5.0.0. It's easy to get it
    back once the spec is done.

 configure.ac                                   |   6 +-
 src/liblzma/Makefile.am                        |   5 -
 src/liblzma/api/Makefile.am                    |   1 -
 src/liblzma/api/lzma.h                         |   1 -
 src/liblzma/api/lzma/subblock.h                | 200 -----
 src/liblzma/common/common.h                    |   6 -
 src/liblzma/common/filter_common.c             |   9 -
 src/liblzma/common/filter_decoder.c            |  16 -
 src/liblzma/common/filter_encoder.c            |  12 -
 src/liblzma/subblock/Makefile.inc              |  20 -
 src/liblzma/subblock/subblock_decoder.c        | 630 ----------------
 src/liblzma/subblock/subblock_decoder.h        |  22 -
 src/liblzma/subblock/subblock_decoder_helper.c |  70 --
 src/liblzma/subblock/subblock_decoder_helper.h |  29 -
 src/liblzma/subblock/subblock_encoder.c        | 984 -------------------------
 src/liblzma/subblock/subblock_encoder.h        |  21 -
 src/xz/args.c                                  |   9 +-
 src/xz/options.c                               |  61 --
 src/xz/options.h                               |   7 -
 19 files changed, 4 insertions(+), 2105 deletions(-)

commit b6377fc990f9b8651149cae0fecb8b9c5904e26d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-05-16 18:42:22 +0300

    Split message_filters().
    
    message_filters_to_str() converts the filter chain to
    a string. message_filters_show() replaces the original
    message_filters().
    
    uint32_to_optstr() was also added to show the dictionary
    size in nicer format when possible.

 src/xz/coder.c   |   2 +-
 src/xz/message.c | 187 +++++++++++++++++++++++++++++++++++--------------------
 src/xz/message.h |  14 ++++-
 3 files changed, 134 insertions(+), 69 deletions(-)

commit d9986db782d6cf0f314342127280519339378fa0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-05-14 23:17:20 +0300

    Omit lzma_restrict from the API headers.
    
    It isn't really useful so omitting it makes things
    shorter and slightly more readable.

 src/liblzma/api/lzma.h       | 12 ------------
 src/liblzma/api/lzma/index.h |  5 ++---
 src/liblzma/api/lzma/vli.h   | 11 +++++------
 3 files changed, 7 insertions(+), 21 deletions(-)

commit 0d3489efca0a723dca0394809fa3e6170843af4b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-05-10 19:57:24 +0300

    Updated INSTALL.

 INSTALL | 5 -----
 1 file changed, 5 deletions(-)

commit 3fb3d594a2b53886adee161b6261e92277f05f7c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-05-10 19:54:52 +0300

    Updated THANKS.

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

commit 6548e304657e77d3a972053db3c41c5daf591113
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-05-10 19:54:15 +0300

    Updates to tuklib_physmem and tuklib_cpucores.
    
    Don't use #error to generate compile error, because some
    compilers actually don't take it as an error. This fixes
    tuklib_physmem on IRIX.
    
    Fix incorrect error check for sysconf() return values.
    
    Add AIX, HP-UX, and Tru64 specific code to detect the
    amount RAM.
    
    Add HP-UX specific code to detect the number of CPU cores.
    
    Thanks a lot to Peter O'Gorman for initial patches,
    testing, and debugging these fixes.

 m4/tuklib_cpucores.m4        | 33 ++++++++++++++++----
 m4/tuklib_physmem.m4         | 72 ++++++++++++++++++++++++++++++++++++++++++--
 src/common/tuklib_cpucores.c | 14 +++++++--
 src/common/tuklib_physmem.c  | 33 +++++++++++++++++++-
 4 files changed, 141 insertions(+), 11 deletions(-)

commit a290cfee3e23f046889c022aa96b4eca2016fdda
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-04-12 21:55:56 +0300

    Show both elapsed time and estimated remaining time in xz -v.
    
    The extra space for showing both has been taken from the
    sizes field. If the sizes grow big, bigger units than MiB
    will be used. It makes it slightly difficult to see that
    progress is still happening with huge files, but it should
    be OK in practice.
    
    Thanks to Trent W. Buck for <http://bugs.debian.org/574583>
    and Jonathan Nieder for suggestions how to fix it.

 THANKS           |  1 +
 src/xz/message.c | 86 +++++++++++++++++++++++++-------------------------------
 2 files changed, 39 insertions(+), 48 deletions(-)

commit a1f7a986b8d708f9290da9799ca1b8d7082fad3e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-03-31 16:47:25 +0300

    Add a simple tip to faq.txt about tar and xz.
    
    Thanks to Gilles Espinasse.

 THANKS      | 1 +
 doc/faq.txt | 6 ++++++
 2 files changed, 7 insertions(+)

commit c737eec91d200d730aa82662affd6b06ebb0bff0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-03-22 21:03:03 +0200

    Updated THANKS.

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

commit f4b2b52624b802c786e4e2a8eb6895794dd93b24
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-03-07 19:52:25 +0200

    Fix xzgrep to not break if filenames have spaces or quotes.
    
    Thanks to someone who reported the bug on IRC.

 src/scripts/xzgrep.in | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit cf38da00a140bd3bd65b192390ae5553380fd774
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-03-07 13:59:32 +0200

    Treat all integer multiplier suffixes as base-2.
    
    Originally both base-2 and base-10 were supported, but since
    there seems to be little need for base-10 in XZ Utils, treat
    everything as base-2 and also be more relaxed about the case
    of the first letter of the suffix. Now xz will accept e.g.
    KiB, Ki, k, K, kB, and KB, and interpret them all as 1024. The
    recommended spelling of the suffixes are still KiB, MiB, and GiB.

 src/xz/util.c     | 53 +++++++++++++++++++++++------------------------------
 src/xz/xz.1       | 48 ++++++++++++++++++++++++++++--------------------
 src/xzdec/xzdec.c | 42 ++++++++++++++++--------------------------
 3 files changed, 67 insertions(+), 76 deletions(-)

commit 00fc1211ae7b687ac912098f4479112059deccbd
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-03-07 13:50:23 +0200

    Consistently round up the memory usage limit in messages.
    
    It still feels a bit wrong to round 1 byte to 1 MiB but
    at least it is now done consistently so that the same
    byte value is always rounded the same way to MiB.

 src/xz/message.c  | 5 +++--
 src/xzdec/xzdec.c | 7 +++++--
 2 files changed, 8 insertions(+), 4 deletions(-)

commit 9886d436ff5615fc70eef32ff757b1e934069621
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-03-07 13:34:34 +0200

    Change the default of --enable-assume-ram from 32 to 128 MiB.
    
    This is to allow files created with "xz -9" to be decompressed
    if the amount of RAM cannot be determined.

 INSTALL      |  5 ++---
 configure.ac | 11 ++++++-----
 2 files changed, 8 insertions(+), 8 deletions(-)

commit 2672bcc9f85ba28ff648e092e9eb4cd9e69ce418
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-03-07 13:29:28 +0200

    Increase the default memory usage limit on "low-memory" systems.
    
    Previously the default limit was always 40 % of RAM. The
    new limit is a little bit more complex:
    
      - If 40 % of RAM is at least 80 MiB, 40 % of RAM is used
        as the limit.
    
      - If 80 % of RAM is over 80 MiB, 80 MiB is used as the limit.
    
      - Otherwise 80 % of RAM is used as the limit.
    
    This should make it possible to decompress files created with
    "xz -9" on more systems. Swapping is generally more expected
    on systems with less RAM, so higher default limit on them
    shouldn't cause too bad surprises in terms of heavy swapping.
    Instead, the higher default limit should reduce the number of
    bad surprises when it used to prevent decompression of files
    created with "xz -9". The DoS prevention system shouldn't be
    a DoS itself.
    
    Note that even with the new default limit, a system with 64 MiB
    RAM cannot decompress files created with "xz -9" without user
    overriding the limit. This should be OK, because if xz is going
    to need more memory than the system has RAM, it will run very
    very slowly and thus it's good that user has to override the limit
    in that case.

 src/xz/hardware.c | 43 +++++++++++++++++++++++++++++++------------
 src/xz/xz.1       | 21 +++++++++++++++------
 src/xzdec/xzdec.1 |  8 ++++----
 src/xzdec/xzdec.c | 42 ++++++++++++++++++++++++++++++------------
 4 files changed, 80 insertions(+), 34 deletions(-)

commit 5527b7269a997e7f335d60f237a64bbf225d9dc7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-03-06 21:36:19 +0200

    Updated THANKS.

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

commit d0d1c51aea4351288a7e533cce28cb7f852f6b05
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-03-06 21:17:20 +0200

    Fix missing initialization in lzma_strm_init().
    
    With bad luck, lzma_code() could return LZMA_BUF_ERROR
    when it shouldn't.
    
    This has been here since the early days of liblzma.
    It got triggered by the modifications made to the xz
    tool in commit 18c10c30d2833f394cd7bce0e6a821044b15832f
    but only when decompressing .lzma files. Somehow I managed
    to miss testing that with Valgrind earlier.
    
    This fixes <http://bugs.gentoo.org/show_bug.cgi?id=305591>.
    Thanks to Rafał Mużyło for helping to debug it on IRC.

 src/liblzma/common/common.c | 1 +
 1 file changed, 1 insertion(+)

commit eb7d51a3faf9298c0c7aa9aaeae1023dcf9e37ea
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-02-12 13:16:15 +0200

    Collection of language fixes to comments and docs.
    
    Thanks to Jonathan Nieder.

 README                                         |  2 +-
 configure.ac                                   |  2 +-
 doc/faq.txt                                    |  2 +-
 extra/7z2lzma/7z2lzma.bash                     |  2 +-
 src/common/tuklib_progname.c                   |  2 +-
 src/common/tuklib_progname.h                   |  2 +-
 src/liblzma/api/lzma/base.h                    |  8 ++++----
 src/liblzma/api/lzma/bcj.h                     |  2 +-
 src/liblzma/api/lzma/block.h                   |  2 +-
 src/liblzma/api/lzma/check.h                   |  2 +-
 src/liblzma/api/lzma/filter.h                  |  4 ++--
 src/liblzma/api/lzma/index.h                   |  6 +++---
 src/liblzma/api/lzma/lzma.h                    |  2 +-
 src/liblzma/api/lzma/version.h                 |  2 +-
 src/liblzma/api/lzma/vli.h                     |  2 +-
 src/liblzma/common/block_header_encoder.c      |  2 +-
 src/liblzma/common/chunk_size.c                |  4 ++--
 src/liblzma/common/common.h                    |  4 ++--
 src/liblzma/common/filter_buffer_decoder.c     |  2 +-
 src/liblzma/common/filter_encoder.c            |  4 ++--
 src/liblzma/common/index.c                     |  6 +++---
 src/liblzma/common/index_encoder.c             |  2 +-
 src/liblzma/common/stream_encoder.c            |  2 +-
 src/liblzma/common/vli_decoder.c               |  2 +-
 src/liblzma/lz/lz_encoder.c                    |  2 +-
 src/liblzma/lz/lz_encoder.h                    |  2 +-
 src/liblzma/lzma/lzma2_encoder.c               |  2 +-
 src/liblzma/lzma/lzma_decoder.c                |  4 ++--
 src/liblzma/lzma/lzma_decoder.h                |  2 +-
 src/liblzma/lzma/lzma_encoder_optimum_fast.c   |  2 +-
 src/liblzma/lzma/lzma_encoder_optimum_normal.c |  2 +-
 src/liblzma/lzma/lzma_encoder_private.h        |  2 +-
 src/liblzma/simple/simple_coder.c              |  2 +-
 src/liblzma/subblock/subblock_encoder.c        |  2 +-
 src/scripts/xzdiff.1                           |  2 +-
 src/scripts/xzless.1                           | 10 +++++-----
 src/xz/coder.c                                 |  2 +-
 src/xz/file_io.c                               |  2 +-
 src/xz/main.c                                  |  6 +++---
 src/xz/main.h                                  |  2 +-
 src/xz/message.c                               | 10 +++++-----
 src/xz/message.h                               |  2 +-
 src/xz/xz.1                                    | 16 ++++++++--------
 src/xzdec/lzmadec_w32res.rc                    |  2 +-
 src/xzdec/xzdec_w32res.rc                      |  2 +-
 tests/test_index.c                             |  2 +-
 windows/build.sh                               |  4 ++--
 47 files changed, 77 insertions(+), 77 deletions(-)

commit 4785f2021aa6a23f1caf724fcc823e562584f225
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-02-12 12:41:20 +0200

    Fix jl -> jb in ASM files.

 src/liblzma/check/crc32_x86.S | 2 +-
 src/liblzma/check/crc64_x86.S | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

commit 6b50c9429bf85521d355adc61745d06ee017f8c8
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-02-12 12:31:22 +0200

    Use __APPLE__ instead of __MACH__ in ASM files.
    
    This allows the files to work on HURD.
    
    Thanks to Jonathan Nieder.

 src/liblzma/check/crc32_x86.S | 8 ++++----
 src/liblzma/check/crc64_x86.S | 8 ++++----
 2 files changed, 8 insertions(+), 8 deletions(-)

commit 6503fde658a5cdbdd907a788865470dd64771601
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-02-07 19:48:06 +0200

    Subtle change to liblzma Block handling API.
    
    lzma_block.version has to be initialized even for
    lzma_block_header_decode(). This way a future version
    of liblzma won't allocate memory in a way that an old
    application doesn't know how to free it.
    
    The subtlety of this change is that all current apps
    using lzma_block_header_decode() will keep working for
    now, because the only possible version value is zero,
    and lzma_block_header_decode() unconditionally sets the
    version to zero even now. Unless fixed, these apps will
    break in the future if a new version of the Block options
    is ever needed.

 src/liblzma/api/lzma/block.h        | 39 ++++++++++++++++---------------------
 src/liblzma/common/stream_decoder.c |  3 +++
 2 files changed, 20 insertions(+), 22 deletions(-)

commit dd7c3841ff78cb94ce02b0220c6e4748460970f7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-02-02 11:50:11 +0200

    Fix wrong assertion.
    
    This was added in 455e68c030fde8a8c2f5e254c3b3ab9489bf3735.

 src/xz/main.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 9d67588c1597849504a3e5ac8bf6f06e7d2ee8be
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-02-01 22:48:42 +0200

    Updated TODO.

 TODO | 4 ----
 1 file changed, 4 deletions(-)

commit fef6333f52c8801308c3b78acb7942988541d137
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-02-01 22:47:54 +0200

    Fix typos in comments.

 src/xz/list.c    | 2 +-
 windows/build.sh | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 455e68c030fde8a8c2f5e254c3b3ab9489bf3735
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-02-01 22:46:56 +0200

    Fix signal handling for --list.

 src/xz/main.c | 19 ++++++++++++++-----
 1 file changed, 14 insertions(+), 5 deletions(-)

commit 82220a149015616f75641ee8bbea415137535b9b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-02-01 11:44:45 +0200

    Fix compression of symlinks with --force.
    
    xz --force accepted symlinks, but didn't remove
    them after successful compression. Instead, an error
    message was displayed.

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

commit d4da177d5ba3d2ef7323a6f1e06ca16e0478810e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-02-01 10:20:57 +0200

    Fix a comment.

 windows/build.sh | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit f9dd797a423a148903cf345b4146cb1fe1eab11d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-31 23:43:54 +0200

    Updated THANKS.

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

commit ee5ddb8b28419fe4923ded5c18a50570a762dcab
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-31 23:41:29 +0200

    Updated TODO.

 TODO | 17 +++++++++++------
 1 file changed, 11 insertions(+), 6 deletions(-)

commit 11936ad3f5a2e97bda3463c7a56a2f4bb9265ea6
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-31 23:35:04 +0200

    Mention TODO in README.

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

commit 2901a8e7e82af05675b8cd8758a8ceddb111359f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-31 23:31:14 +0200

    Updated INSTALL.

 INSTALL | 52 ++++++++++++++++++++++++++--------------------------
 1 file changed, 26 insertions(+), 26 deletions(-)

commit 8884e16864ba53fb4b58623d7537d7ef30c28e11
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-31 23:28:51 +0200

    Revise the Windows build files.
    
    The old Makefile + config.h was deleted, because it
    becomes outdated too easily and building with the
    Autotools based build system works fine even on Windows.
    
    windows/build.sh hasn't got much testing, but it should
    work to build 32-bit x86 and x86-64 versions of XZ Utils
    using MSYS, MinGW or MinGW-w32, and MinGW-w64.
    
    windows/INSTALL-Windows.txt describes what packages are
    needed and how to install them.
    
    windows/README-Windows.txt is a readme file for the binary
    package that build.sh hopefully builds.
    
    There are no instructions about using Autotools for now,
    so those using a git snapshot may want to run
    "autoreconf -fi && ./configure && make mydist" on a UN*X
    box and then copy the resulting .tar.gz to a Windows.

 windows/INSTALL-Windows.txt | 131 ++++++++++++++++++
 windows/Makefile            | 320 --------------------------------------------
 windows/README              | 155 ---------------------
 windows/README-Windows.txt  | 115 ++++++++++++++++
 windows/build.sh            | 189 ++++++++++++++++++++++++++
 windows/config.h            | 170 -----------------------
 6 files changed, 435 insertions(+), 645 deletions(-)

commit 34eb5e201d62f7f46bbe6fe97cfe08cb31b3b88c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-31 19:52:38 +0200

    Select the default integrity check type at runtime.
    
    Previously it was set statically to CRC64 or CRC32
    depending on options passed to the configure script.

 src/xz/coder.c | 19 ++++++++++++++-----
 1 file changed, 14 insertions(+), 5 deletions(-)

commit 96a4f840e3b9ca5c81e5711ff9c267b194f93ef1
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-31 18:17:50 +0200

    Improve displaying of the memory usage limit.

 src/xz/coder.c   |  8 +++-----
 src/xz/message.c | 37 +++++++++++++++++++++++++++++--------
 src/xz/util.c    |  7 +++++++
 src/xz/util.h    |  6 ++++++
 4 files changed, 45 insertions(+), 13 deletions(-)

commit b3cc4d8edd68a0250cc69680c99b9f7343f99cf2
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-31 12:53:56 +0200

    Don't use uninitialized sigset_t.
    
    If signal handlers haven't been established, then it's
    useless to try to block them, especially since the sigset_t
    used for blocking hasn't been initialized yet.

 src/xz/signals.c | 34 ++++++++++++++++++++++++----------
 1 file changed, 24 insertions(+), 10 deletions(-)

commit 231c3c7098f1099a56abb8afece76fc9b8699f05
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-31 12:01:54 +0200

    Delay opening the destionation file and other fixes.
    
    The opening of the destination file is now delayed a little.
    The coder is initialized, and if decompressing, the memory
    usage of the first Block compared against the memory
    usage limit before the destination file is opened. This
    means that if --force was used, the old "target" file won't
    be deleted so easily when something goes wrong very early.
    Thanks to Mark K for the bug report.
    
    The above fix required some changes to progress message
    handling. Now there is a separate function for setting and
    printing the filename. It is used also in list.c.
    
    list_file() now handles stdin correctly (gives an error).
    
    A useless check for user_abort was removed from file_io.c.

 src/xz/coder.c   |  64 ++++++++++++++++++++++-----------
 src/xz/file_io.c | 107 +++++++++++++++++++++++++++----------------------------
 src/xz/file_io.h |   8 +++--
 src/xz/list.c    |  28 +++++----------
 src/xz/message.c |  46 +++++++++++++-----------
 src/xz/message.h |  29 ++++++++++-----
 6 files changed, 157 insertions(+), 125 deletions(-)

commit 0dbd0641db99d5e73d51d04ce7a71e52dc6b4105
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-29 22:48:04 +0200

    Add list.h to src/xz/Makefile.am.
    
    This should have been already in
    0bc9eab243dee3be764b3530433a7fcdc3f7c6a1.

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

commit b4b1a56e0cbd597157858264f5c7189201ac9018
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-29 13:24:27 +0200

    Add lzmainfo.1 to manfiles list to convert to .txt and .pdf.

 Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit 5574d64e03ad3a3d6e00e4b0d3e81c7b5529ec95
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-27 16:42:11 +0200

    Silence two compiler warnings on DOS-like systems.

 src/common/tuklib_open_stdxxx.c | 6 +++++-
 src/xz/file_io.c                | 3 +++
 2 files changed, 8 insertions(+), 1 deletion(-)

commit b063cc34a30a4edf109343ff373b2b62b8ca72d3
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-27 13:31:03 +0200

    Use PACKAGE_URL instead of custom PACKAGE_HOMEPAGE.

 configure.ac              | 9 ++-------
 src/liblzma/liblzma.pc.in | 2 +-
 src/lzmainfo/lzmainfo.c   | 2 +-
 src/xz/message.c          | 2 +-
 src/xzdec/xzdec.c         | 2 +-
 5 files changed, 6 insertions(+), 11 deletions(-)

commit 38b8035b5cb5f56457c5fa5a891d6900fcf5984f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-26 23:37:46 +0200

    Add a missing space to an error message.
    
    Thanks to Robert Readman.

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

commit e5496f9628ff5979392a80421d0b63a4de8015b4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-26 22:53:37 +0200

    Use past tense in error message in io_unlink().
    
    Added a note to translators too.
    
    Thanks to Robert Readman.

 THANKS           |  1 +
 src/xz/file_io.c | 14 ++++++++++++--
 2 files changed, 13 insertions(+), 2 deletions(-)

commit d9a9800597ea540090e434132c3b511217df0a2b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-26 15:42:24 +0200

    Fix too small static buffer in util.c.
    
    This was introduced in
    0dd6d007669b946543ca939a44243833c79e08f4 two days ago.

 src/xz/util.c | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

commit d0b4bbf5da068503c099cd456e294d7673548cc0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-26 14:46:43 +0200

    Minor comment fix.

 src/xz/main.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 0bc9eab243dee3be764b3530433a7fcdc3f7c6a1
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-24 23:50:54 +0200

    Add initial version of xz --list.
    
    This is a bit rough but should be useful for basic things.
    Ideas (with detailed examples) about the output format are
    welcome.
    
    The output of --robot --list is not necessarily stable yet,
    although I don't currently have any plans about changing it.
    
    The man page hasn't been updated yet.

 src/xz/Makefile.am |   1 +
 src/xz/list.c      | 988 ++++++++++++++++++++++++++++++++++-------------------
 src/xz/list.h      |  18 +
 src/xz/main.c      |  19 +-
 src/xz/private.h   |   1 +
 5 files changed, 668 insertions(+), 359 deletions(-)

commit df254ce03be016e217b511e7acd5d493f9929ca5
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-24 22:46:11 +0200

    Add io_pread().
    
    It will be used by --list.

 src/xz/file_io.c | 25 +++++++++++++++++++++++++
 src/xz/file_io.h | 17 +++++++++++++++++
 2 files changed, 42 insertions(+)

commit ef68dd4a92976276304de2aedfbe34ae91a86abb
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-24 22:45:14 +0200

    Set LC_NUMERIC=C when --robot is used.
    
    It is to ensure that floating point numbers
    will always have a dot as the decimal separator.

 src/xz/args.c | 4 ++++
 1 file changed, 4 insertions(+)

commit 0dd6d007669b946543ca939a44243833c79e08f4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-24 16:57:40 +0200

    Some improvements to printing sizes in xz.

 src/xz/coder.c   | 56 +++++++++++++++------------------------
 src/xz/message.c | 80 ++++++++++++++++++--------------------------------------
 src/xz/message.h |  4 +++
 src/xz/util.c    | 72 ++++++++++++++++++++++++++++++++++++++++++++++++++
 src/xz/util.h    | 44 +++++++++++++++++++++++++++++++
 5 files changed, 166 insertions(+), 90 deletions(-)

commit 2a98fdffd68c66371279c211c29153c808ad5c1d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-20 22:02:35 +0200

    Fix a typo in README.
    
    Thanks to R. Bijker.

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

commit 07a11dad44e041b01dcfc73e8d4e00731158c06d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-17 11:59:54 +0200

    Updated windows/Makefile.
    
    Thanks to Dan Shechter for the patch.
    
    It is likely that windows/Makefile will be removed
    completely, because Autotols based build nowadays
    works well with both 32-bit and 64-bit MinGW (I
    just need to update the docs).

 windows/Makefile | 38 +++++++++++++++++++++++++-------------
 windows/config.h |  2 ++
 2 files changed, 27 insertions(+), 13 deletions(-)

commit 37f31ead9d2b4e467df11450cf29ed7d7e3e25f3
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-15 11:05:11 +0200

    Update the xz man page to match the previous two commits.

 src/xz/xz.1 | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

commit 3ffd5d81a43210c8da56da5c5b3637d3f8bc63c7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-13 19:10:25 +0200

    Don't read compressed data from a terminal or write it
    to a terminal even if --force is specified.
    
    It just seems more reasonable this way.
    
    The new behavior matches bzip2. The old one matched gzip.

 src/xz/main.c | 20 +++++++++-----------
 src/xz/util.c |  8 ++++----
 2 files changed, 13 insertions(+), 15 deletions(-)

commit 23ac2c44c3ac76994825adb7f9a8f719f78b5ee4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-13 18:12:40 +0200

    Don't compress or decompress special files unless writing
    to stdout even if --force is used.
    
    --force will still enable compression of symlinks, but only
    in case they point to a regular file.
    
    The new way simply seems more reasonable. It matches gzip's
    behavior while the old one matched bzip2's behavior.

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

commit cee12aa852ec0902983dc1f153346ef750157fb9
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-12 16:30:33 +0200

    Updated THANKS.

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

commit 153c7740c54b3c90129dbd3d6153ac1303c4d605
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-12 16:18:14 +0200

    Add IRIX-specific code to tuklib_physmem and tuklib_cpucores.
    
    This is untested but it will get tested soon and, if needed,
    fixed before 5.0.0.
    
    Thanks to Stuart Shelton.

 m4/tuklib_cpucores.m4        | 11 +++++++++--
 m4/tuklib_physmem.m4         | 22 +++++++++++++++++++++-
 src/common/tuklib_cpucores.c |  6 ++++++
 src/common/tuklib_physmem.c  | 19 +++++++++++++++++++
 4 files changed, 55 insertions(+), 3 deletions(-)

commit 8ea8dc754a7a5bc2d60db1eac201839cabdab6a1
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2010-01-01 00:29:10 +0200

    Fix _memconfig() functions.
    
    This affects lzma_memusage() and lzma_memlimit_get().

 src/liblzma/api/lzma/index.h        |  7 -------
 src/liblzma/common/alone_decoder.c  | 11 +++++++----
 src/liblzma/common/index_decoder.c  | 10 ++++++----
 src/liblzma/common/stream_decoder.c | 11 +++++++----
 4 files changed, 20 insertions(+), 19 deletions(-)

commit 1a7ec87c8ee61dfc2e496d2e1fb7ab0939804691
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-12-31 22:45:53 +0200

    Revised the Index handling code.
    
    This breaks API and ABI but most apps are not affected
    since most apps don't use this part of the API. You will
    get a compile error if you are using anything that got
    broken.
    
    Summary of changes:
    
      - Ability to store Stream Flags, which are needed
        for random-access reading in multi-Stream files.
    
      - Separate function to set size of Stream Padding.
    
      - Iterator structure makes it possible to read the same
        lzma_index from multiple threads at the same time.
    
      - A lot faster code to locate Blocks.
    
      - Removed lzma_index_equal() without adding anything
        to replace it. I don't know what it should do exactly
        with the new features and what actually needs this
        function in the first place other than test_index.c,
        which now has its own code to compare lzma_indexes.

 src/liblzma/api/lzma/index.h               |  572 +++++++---
 src/liblzma/common/index.c                 | 1553 ++++++++++++++++++----------
 src/liblzma/common/index.h                 |    6 +
 src/liblzma/common/index_decoder.c         |   12 +-
 src/liblzma/common/index_encoder.c         |   36 +-
 src/liblzma/common/index_encoder.h         |    2 +-
 src/liblzma/common/stream_buffer_encoder.c |    6 +-
 src/liblzma/common/stream_encoder.c        |    3 +-
 tests/test_index.c                         |  371 ++++---
 9 files changed, 1703 insertions(+), 858 deletions(-)

commit f29997a846e673cb3b8cbd57de47ed313b3978bb
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-12-31 21:13:25 +0200

    Remove c-format tag in cs.po.
    
    It was fixed in the C code earlier.

 po/cs.po | 1 -
 1 file changed, 1 deletion(-)

commit 097bad000363e0bf29f8274ad2d7ab59f7dbf644
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-12-31 21:11:05 +0200

    Add missing lzma_nothrow in filter.h.

 src/liblzma/api/lzma/filter.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit b56cb1fc31fa2381f92eefc040df85667048d626
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-12-09 18:13:44 +0200

    Remove redefinition of _(msgid) macro from lzmainfo.c.

 src/lzmainfo/lzmainfo.c | 7 -------
 1 file changed, 7 deletions(-)

commit 171b03febfe09d9fae6ac8be6aa4518bcaf427d2
Author: Jonathan Nieder <jrnieder@gmail.com>
Date:   2009-12-08 19:41:57 -0600

    update po/.gitignore
    
    Since the *.gmo files are deleted by the maintainer-clean target,
    I assume they are not meant to be tracked.
    
    Also add the other files listed in the Makefile’s clean targets
    (stamp-poT, xz.po, xz.[12].po, *.new.po, xz.mo) to make sure they
    are not accidentally tracked.  Most of these are intermediate
    files that would not appear unless a build is interrupted or
    fails.
    
    Split the list of untracked files by origin to make it easier to
    tell if files are missing in the future.
    
    Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>

 po/.gitignore | 28 ++++++++++++++++++++++------
 1 file changed, 22 insertions(+), 6 deletions(-)

commit f7e44c6c11f630519072971b8b07a5729c096c36
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-12-09 00:38:55 +0200

    Always rely on GCC's auto-import on Windows.
    
    I understood that this is nicer, because then people
    don't need to worry about the LZMA_API_STATIC macro.
    
    Thanks to Charles Wilson and Keith Marshall.

 src/liblzma/api/lzma.h | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

commit 7b76a3e2336f25088957cba92b0dbd854d9caa3c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-12-07 21:46:53 +0200

    Fix file_io.c on DOS-like systems.
    
    The problem was introduced when adding sparse file
    support in 465d1b0d6518c5d980f2db4c2d769f9905bdd902.
    
    Thanks to Charles Wilson.

 src/xz/file_io.c | 4 ++++
 1 file changed, 4 insertions(+)

commit 0696f5d268362221380e039bad48a86e29067c6a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-12-07 20:54:21 +0200

    Add Czech translation.
    
    Thanks to Marek Černocký.
    
    Other people planning to translate xz: Note that the
    messages are a little bit in flux still. Translations
    are still welcome, just be prepared to some extra work
    in case there are changes.

 THANKS     |   1 +
 po/LINGUAS |   1 +
 po/cs.po   | 637 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 639 insertions(+)

commit 5e817a50d276f0a3607638c1c1d449d50b9aa4e5
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-12-07 20:32:08 +0200

    Add a note for translators to add a bug reporting address
    for translation bugs.

 src/xz/message.c | 4 ++++
 1 file changed, 4 insertions(+)

commit 6db1c35be9e1e364cdacff6878910e1b7aac2a37
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-12-07 20:07:02 +0200

    Prevent xgettext from taking one regular string as a C format string.
    
    Thanks to Marek Černocký.

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

commit e0c2776b6ffbd2b1900fde353aceac734edc93d7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-11-28 17:45:22 +0200

    Remove duplicate code in io_open_dest().
    
    Fix a missing _() in the error message too.

 src/xz/file_io.c | 9 +--------
 1 file changed, 1 insertion(+), 8 deletions(-)

commit f057a33c6f7c5992389479f2d4feabf2900ba7ee
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-11-26 10:11:23 +0200

    Typo fix to sysdefs.h.
    
    Thanks to Jonathan Nieder.

 src/common/sysdefs.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8767b41534eafdf5e742e12190646bf5740b0cdb
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-11-26 10:10:36 +0200

    Fix a memory leak in test_index.c.
    
    This was introduced in
    bd13b04e202b6f495a68eb0766f97085b7c50a06.
    
    Thanks to Jim Meyering for noticing it.

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

commit 919fbaff860acdaa4bcd216500a0b1c960a6db92
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-11-25 14:22:19 +0200

    Add missing error check to coder.c.
    
    With bad luck this could cause a segfault due to
    reading (but not writing) past the end of the buffer.

 src/xz/coder.c | 20 +++++++++++---------
 1 file changed, 11 insertions(+), 9 deletions(-)

commit bd13b04e202b6f495a68eb0766f97085b7c50a06
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-11-25 13:04:10 +0200

    Fix bugs in lzma_index_read() and lzma_index_cat().
    
    lzma_index_read() didn't skip over Stream Padding
    if it was the first record in the Index.
    
    lzma_index_cat() didn't combine small Indexes correctly.
    
    The test suite was updated to check for these bugs.
    
    These bugs didn't affect the xz command line tool or
    most users of liblzma in any way.

 src/liblzma/common/index.c | 30 +++++++++++++++++++-----------
 tests/test_index.c         | 28 +++++++++++++++++++++++++---
 2 files changed, 44 insertions(+), 14 deletions(-)

commit 1f196909143b888e062bd9a0c4ba8c34d3019bfa
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-11-25 12:52:56 +0200

    Index decoder fixes.
    
    The Index decoder code didn't perfectly match the API docs,
    which said that *i will be set to point to the decoded Index
    only after decoding has succeeded. The docs were a bit unclear
    too.
    
    Now the decoder will initially set *i to NULL. *i will be set
    to point to the decoded Index once decoding has succeeded.
    This simplifies applications too, since it avoids dangling
    pointers.

 src/liblzma/api/lzma/index.h       | 23 ++++++++++++-----------
 src/liblzma/common/index_decoder.c | 26 ++++++++++++++++++++------
 2 files changed, 32 insertions(+), 17 deletions(-)

commit 465d1b0d6518c5d980f2db4c2d769f9905bdd902
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-11-25 11:19:20 +0200

    Create sparse files by default when decompressing into
    a regular file.
    
    Sparse file creation can be disabled with --no-sparse.
    I don't promise yet that the name of this option won't
    change before 5.0.0. It's possible that the code, that
    checks when it is safe to use sparse output on stdout,
    is not good enough, and a more flexible command line
    option is needed to configure sparse file handling.

 src/xz/args.c    |   6 ++
 src/xz/coder.c   |  33 ++++----
 src/xz/file_io.c | 243 +++++++++++++++++++++++++++++++++++++++++++++++--------
 src/xz/file_io.h |  34 ++++++--
 src/xz/message.c |   1 +
 src/xz/xz.1      |  11 +++
 6 files changed, 272 insertions(+), 56 deletions(-)

commit 37de544414fc2dc5039471d1002ebd015eb3e627
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-11-22 12:43:06 +0200

    Updated THANKS.

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

commit f1a28b96c900c658fe016852ff62f6c24d1f50fa
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-11-22 12:05:33 +0200

    Add missing consts to pointer casts.

 src/liblzma/check/crc32_fast.c | 4 ++--
 src/liblzma/check/crc64_fast.c | 5 +++--
 2 files changed, 5 insertions(+), 4 deletions(-)

commit b9b5c54cd438b3ae47b44cc211b71f3bc53e35ef
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-11-22 12:00:30 +0200

    Enable assembler code only if it is known to work
    on that operating system.
    
    I'm too lazy to think how to make a good Autoconf test
    for this and it's not that important anyway.
    
    No longer define HAVE_ASM_X86 or HAVE_ASM_X86_64.
    Inline assembler (if any) is used if a macro like
    __i386__ or __x86_64__ is defined.

 configure.ac | 26 ++++++++++++--------------
 1 file changed, 12 insertions(+), 14 deletions(-)

commit 0733f4c9994db696420a405810d5f02c79ebc404
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-11-22 11:55:03 +0200

    Make fastpos.h use tuklib_integer.h instead of bsr.h
    when --enable-small has been specified.

 src/liblzma/common/Makefile.inc |  1 -
 src/liblzma/common/bsr.h        | 60 -----------------------------------------
 src/liblzma/lzma/fastpos.h      |  5 +---
 3 files changed, 1 insertion(+), 65 deletions(-)

commit 7ac3985d891dcc5773543f84cc5bce6c14841b12
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-11-22 11:52:30 +0200

    Update tuklib_integer.h with bit scan functions.
    
    Thanks to Joachim Henke for the original patch.

 src/common/tuklib_integer.h | 189 ++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 181 insertions(+), 8 deletions(-)

commit c74c132f7f79a842c073c66575a4fdb985e4c2e3
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-11-20 12:51:19 +0200

    Update tuklib_cpucores.m4 and tuklib_physmem.m4 from tuklib,
    which now use AC_CACHE_CHECK. Using the cache variable,
    configure now warns if there is no method to detect the amount
    of RAM and recommends using --enable-assume-ram.

 configure.ac          | 16 ++++++++++++++++
 m4/tuklib_cpucores.m4 | 31 ++++++++++++++++++-------------
 m4/tuklib_physmem.m4  | 50 +++++++++++++++++++++++++++-----------------------
 3 files changed, 61 insertions(+), 36 deletions(-)

commit d315ca4930ff96e1428c6021c96f209e1abdd83e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-11-16 18:16:45 +0200

    Add support for --info-memory and --robot to xz.
    
    Currently --robot works only with --info-memory and
    --version. --help and --long-help work too, but --robot
    has no effect on them.
    
    Thanks to Jonathan Nieder for the original patches.

 src/xz/args.c    | 85 +++++++++++++++++++++++++++++++++-----------------------
 src/xz/args.h    |  1 +
 src/xz/main.c    | 11 +++++---
 src/xz/message.c | 47 +++++++++++++++++++++++--------
 src/xz/message.h |  4 +++
 src/xz/xz.1      | 40 +++++++++++++++++++++++---
 6 files changed, 133 insertions(+), 55 deletions(-)

commit e330fb7e6b8162894280c8a3dc22fdc05cd2d85e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-11-15 12:54:45 +0200

    Fix wrong indentation caused by incorrect settings
    in the text editor.

 src/liblzma/lz/lz_decoder.c                    | 18 +++++++++---------
 src/liblzma/lzma/lzma2_encoder.c               |  6 +++---
 src/liblzma/lzma/lzma_encoder_optimum_normal.c |  2 +-
 3 files changed, 13 insertions(+), 13 deletions(-)

commit 93e418562cf127a9171e87bcd4e9af8e1bfcdae4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-11-15 12:40:17 +0200

    Add lzma_physmem().
    
    I had hoped to keep liblzma as purely a compression
    library as possible (e.g. file I/O will go into
    a different library), but it seems that applications
    linking agaisnt liblzma need some way to determine
    the memory usage limit, and knowing the amount of RAM
    is one reasonable way to help making such decisions.
    
    Thanks to Jonathan Nieder for the original patch.

 src/liblzma/Makefile.am               |  5 ++--
 src/liblzma/api/Makefile.am           |  1 +
 src/liblzma/api/lzma.h                |  3 +++
 src/liblzma/api/lzma/hardware.h       | 51 +++++++++++++++++++++++++++++++++++
 src/liblzma/common/Makefile.inc       |  1 +
 src/liblzma/common/hardware_physmem.c | 25 +++++++++++++++++
 src/xz/Makefile.am                    |  1 -
 src/xz/hardware.c                     |  3 +--
 src/xzdec/Makefile.am                 |  6 ++---
 src/xzdec/xzdec.c                     |  3 +--
 10 files changed, 88 insertions(+), 11 deletions(-)

commit cf39faca59083d38422058c6c97aa757ea7797d0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-11-14 20:21:19 +0200

    Updated THANKS.

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

commit 2ddcae247c284cc2f396b6cfdab57790c7588b5f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-11-14 20:20:03 +0200

    Some updates to xz man page.

 src/xz/xz.1 | 54 +++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 file changed, 49 insertions(+), 5 deletions(-)

commit 19b2674f07f8b588dfaf6638396b4b42866d7e23
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-11-14 19:51:03 +0200

    Fix description of --memory in --long-help.

 src/xz/message.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 2291346f0cccf88e605d84b75c9c5aaaaddb5df8
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-11-14 19:45:39 +0200

    Update the debug programs so that they compile again.

 debug/crc32.c      |  1 +
 debug/memusage.c   |  6 ++++--
 debug/sync_flush.c | 14 +++++++++-----
 3 files changed, 14 insertions(+), 7 deletions(-)

commit 418d64a32e8144210f98a810738fed5a897e8367
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-11-14 18:59:19 +0200

    Fix a design error in liblzma API.
    
    Originally the idea was that using LZMA_FULL_FLUSH
    with Stream encoder would read the filter chain
    from the same array that was used to intialize the
    Stream encoder. Since most apps wouldn't use
    LZMA_FULL_FLUSH, most apps wouldn't need to keep
    the filter chain available after initializing the
    Stream encoder. However, due to my mistake, it
    actually required keeping the array always available.
    
    Since setting the new filter chain via the array
    used at initialization time is not a nice way to do
    it for a couple of reasons, this commit ditches it
    and introduces lzma_filters_update(). This new function
    replaces also the "persistent" flag used by LZMA2
    (and to-be-designed Subblock filter), which was also
    an ugly thing to do.
    
    Thanks to Alexey Tourbin for reminding me about the problem
    that Stream encoder used to require keeping the filter
    chain allocated.

 src/liblzma/api/lzma/filter.h           | 30 +++++++++++++
 src/liblzma/api/lzma/lzma.h             | 13 ------
 src/liblzma/common/block_encoder.c      | 14 ++++++
 src/liblzma/common/common.c             | 20 ++++++++-
 src/liblzma/common/common.h             | 22 ++++++++++
 src/liblzma/common/easy_encoder.c       | 63 ++-------------------------
 src/liblzma/common/filter_common.c      |  3 ++
 src/liblzma/common/filter_encoder.c     | 27 ++++++++++++
 src/liblzma/common/filter_encoder.h     |  2 +-
 src/liblzma/common/stream_encoder.c     | 76 ++++++++++++++++++++++++++++-----
 src/liblzma/delta/delta_common.c        |  5 +--
 src/liblzma/delta/delta_decoder.c       |  3 +-
 src/liblzma/delta/delta_encoder.c       | 17 +++++++-
 src/liblzma/delta/delta_private.h       |  2 +-
 src/liblzma/lz/lz_encoder.c             | 17 ++++++++
 src/liblzma/lz/lz_encoder.h             |  4 ++
 src/liblzma/lzma/lzma2_encoder.c        | 59 ++++++++++++++-----------
 src/liblzma/lzma/lzma_encoder_presets.c |  1 -
 src/liblzma/simple/simple_coder.c       | 12 ++++++
 src/xz/options.c                        |  1 -
 20 files changed, 273 insertions(+), 118 deletions(-)

commit f0bf7634b77263a4dd02b20c71861ab67995da68
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-10-17 11:11:58 +0300

    Fix wrong function name in the previous commit.
    
    It was meant to be lzma_filters_copy(), not lzma_filters_dup().

 src/liblzma/api/lzma/filter.h      | 2 +-
 src/liblzma/common/filter_common.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 6d118a0b9def82e96afba7386ec8d7da0b59649f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-10-17 01:47:07 +0300

    Add lzma_filters_copy().
    
    This will be needed internally by liblzma once I fix
    a design mistake in the encoder API. This function may
    be useful to applications too so it's good to export it.

 src/liblzma/api/lzma/filter.h      | 31 ++++++++++++++
 src/liblzma/common/filter_common.c | 82 ++++++++++++++++++++++++++++++++++++++
 2 files changed, 113 insertions(+)

commit 78e92c18470483e161388e679c1ee556adb3a691
Author: Jonathan Nieder <jrnieder@gmail.com>
Date:   2009-10-15 20:44:13 -0500

    Escape dashes in xzmore.1
    
    A minus sign is larger, easier to see in a printout, and more
    likely to use the same glyph as ASCII hyphen-minus in a terminal
    than a hyphen.  Since broken manual pagers do not find hyphens
    when the user searches for a hyphen-minus, minus signs are also
    easier to search for.  So use minus signs instead of hyphens to
    render sample terminal output.

 src/scripts/xzmore.1 | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 7b7fe902d98da28e5769e2aa1e0c08c92384f7ee
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-10-16 20:35:39 +0300

    Mention --check=none in --long-help. It was already in
    the man page though.
    
    Thanks to Jim Meyering for noticing this.

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

commit ebfb2c5e1f344e5c6e549b9dedaa49b0749a4a24
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-10-04 22:57:12 +0300

    Use a tuklib module for integer handling.
    
    This replaces bswap.h and integer.h.
    
    The tuklib module uses <byteswap.h> on GNU,
    <sys/endian.h> on *BSDs and <sys/byteorder.h>
    on Solaris, which may contain optimized code
    like inline assembly.

 configure.ac                              |  54 +----
 m4/tuklib_integer.m4                      |  74 +++++++
 src/common/bswap.h                        |  52 -----
 src/common/integer.h                      | 170 ---------------
 src/common/tuklib_config.h                |   8 +-
 src/common/tuklib_integer.h               | 350 ++++++++++++++++++++++++++++++
 src/liblzma/check/check.c                 |   4 +-
 src/liblzma/check/crc32_fast.c            |   4 +-
 src/liblzma/check/crc32_tablegen.c        |   8 +-
 src/liblzma/check/crc64_fast.c            |   4 +-
 src/liblzma/check/crc64_tablegen.c        |   8 +-
 src/liblzma/check/crc_macros.h            |   2 -
 src/liblzma/check/sha256.c                |  18 +-
 src/liblzma/common/alone_encoder.c        |   2 +-
 src/liblzma/common/block_header_decoder.c |   2 +-
 src/liblzma/common/block_header_encoder.c |   2 +-
 src/liblzma/common/common.h               |   2 +-
 src/liblzma/common/stream_flags_decoder.c |   6 +-
 src/liblzma/common/stream_flags_encoder.c |   6 +-
 src/liblzma/lz/lz_encoder_hash.h          |   2 +-
 src/liblzma/lzma/lzma_decoder.c           |   2 +-
 src/liblzma/lzma/lzma_encoder.c           |   2 +-
 src/liblzma/lzma/lzma_encoder_private.h   |   2 +-
 src/liblzma/simple/simple_decoder.c       |   2 +-
 src/liblzma/simple/simple_encoder.c       |   2 +-
 tests/test_block_header.c                 |   4 +-
 tests/test_stream_flags.c                 |   6 +-
 tests/tests.h                             |   2 +-
 28 files changed, 467 insertions(+), 333 deletions(-)

commit 29fd321033276261b87da7be5223db33d879a4c7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-10-02 14:35:56 +0300

    Add support for --enable-assume-ram=SIZE.

 INSTALL           | 16 ++++++++++++++++
 configure.ac      | 24 ++++++++++++++++++++++++
 src/xz/hardware.c |  7 +++----
 src/xzdec/xzdec.c |  5 +++--
 4 files changed, 46 insertions(+), 6 deletions(-)

commit 3782b3fee4812b0dd4ffdfa6563ed49f73060f25
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-10-02 11:28:17 +0300

    Use unaligned access (if possible) on both endiannesses
    in lz_encoder_hash.h.

 src/liblzma/lz/lz_encoder_hash.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit c5f68b5cc79085a87f950fea53843e27f328068e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-10-02 11:03:26 +0300

    Make liblzma produce the same output on both endiannesses.
    
    Seems that it is a problem in some cases if the same
    version of XZ Utils produces different output on different
    endiannesses, so this commit fixes that problem. The output
    will still vary between different XZ Utils versions, but I
    cannot avoid that for now.
    
    This commit bloatens the code on big endian systems by 1 KiB,
    which should be OK since liblzma is bloated already. ;-)

 src/liblzma/check/crc32_tablegen.c     | 30 +++++++++++++++
 src/liblzma/lz/Makefile.inc            |  1 +
 src/liblzma/lz/lz_encoder.c            |  7 +++-
 src/liblzma/lz/lz_encoder_hash.h       | 35 +++++++++++------
 src/liblzma/lz/lz_encoder_hash_table.h | 68 ++++++++++++++++++++++++++++++++++
 src/liblzma/lz/lz_encoder_mf.c         |  1 -
 6 files changed, 128 insertions(+), 14 deletions(-)

commit 4a84d1adfda35e4fb4d41ecf0feb8223b100517a
Author: Mike Frysinger <vapier@gentoo.org>
Date:   2009-09-26 12:51:50 -0400

    add lzmainfo to gitignore
    
    Signed-off-by: Mike Frysinger <vapier@gentoo.org>

 .gitignore | 2 ++
 1 file changed, 2 insertions(+)

commit 188a1dcd0cc7867810ed3a55c598d0680922c63b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-09-27 11:53:36 +0300

    Updated THANKS.

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

commit db9119b9181b307e7ac5d2bae82444d04b902b59
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-09-27 11:48:54 +0300

    Work around a bug in Interix header files.
    
    Thanks to Markus Duft for the patch.

 src/common/sysdefs.h | 6 ++++++
 1 file changed, 6 insertions(+)

commit b3d105e69786a45963176fd2193abe75e05ba738
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-09-24 17:50:17 +0300

    Fix an error in OpenVMS-specific code.
    
    Thanks to Jouk Jansen.

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

commit 5e000ff00d4d01e559397b49eb648ad3f159d496
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-09-22 18:59:56 +0300

    Added OpenVMS-specific information to INSTALL.

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

commit 932b2e204463d70f3eee5b8a1ea5a23bf9d001a4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-09-22 14:03:02 +0300

    Better fixes for OpenVMS support.
    
    Thanks to Jouk Jansen.

 src/xz/file_io.c | 19 ++++++++++++++++---
 1 file changed, 16 insertions(+), 3 deletions(-)

commit 4c3630ec4179fe9265407a35c4db1374ffc82372
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-09-22 13:40:19 +0300

    Avoid non-standard preprocessor construct.
    
    Thanks to Jouk Jansen.

 src/common/tuklib_common.h | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

commit 0deb1bb60addd1306b525e0ac0ad2a84eb0390d9
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-09-21 19:50:09 +0300

    Make sure that TUKLIB_DOSLIKE doesn't get defined on Cygwin.
    
    Thanks to Charles Wilson.

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

commit e599bba4216c0edb8cc8f40adad3a6dba88685f4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-09-19 09:47:30 +0300

    Various changes.
    
    Separate a few reusable components from XZ Utils specific
    code. The reusable code is now in "tuklib" modules. A few
    more could be separated still, e.g. bswap.h.
    
    Fix some bugs in lzmainfo.
    
    Fix physmem and cpucores code on OS/2. Thanks to Elbert Pol
    for help.
    
    Add OpenVMS support into physmem. Add a few #ifdefs to ease
    building XZ Utils on OpenVMS. Thanks to Jouk Jansen for the
    original patch.

 THANKS                          |   1 +
 configure.ac                    |  12 ++--
 m4/lc_cpucores.m4               |  57 ----------------
 m4/lc_physmem.m4                |  84 -----------------------
 m4/tuklib_common.m4             |  22 ++++++
 m4/tuklib_cpucores.m4           |  72 ++++++++++++++++++++
 m4/tuklib_physmem.m4            | 119 ++++++++++++++++++++++++++++++++
 m4/tuklib_progname.m4           |  25 +++++++
 src/common/cpucores.h           |  51 --------------
 src/common/open_stdxxx.h        |  49 --------------
 src/common/physmem.h            | 144 ---------------------------------------
 src/common/sysdefs.h            |   4 --
 src/common/tuklib_common.h      |  67 ++++++++++++++++++
 src/common/tuklib_config.h      |   1 +
 src/common/tuklib_cpucores.c    |  46 +++++++++++++
 src/common/tuklib_cpucores.h    |  23 +++++++
 src/common/tuklib_exit.c        |  57 ++++++++++++++++
 src/common/tuklib_exit.h        |  25 +++++++
 src/common/tuklib_gettext.h     |  44 ++++++++++++
 src/common/tuklib_open_stdxxx.c |  51 ++++++++++++++
 src/common/tuklib_open_stdxxx.h |  23 +++++++
 src/common/tuklib_physmem.c     | 146 ++++++++++++++++++++++++++++++++++++++++
 src/common/tuklib_physmem.h     |  28 ++++++++
 src/common/tuklib_progname.c    |  50 ++++++++++++++
 src/common/tuklib_progname.h    |  32 +++++++++
 src/lzmainfo/Makefile.am        |   5 +-
 src/lzmainfo/lzmainfo.c         |  65 ++++++------------
 src/xz/Makefile.am              |   7 +-
 src/xz/args.c                   |   8 +--
 src/xz/file_io.c                |  43 ++++++------
 src/xz/hardware.c               |   8 +--
 src/xz/main.c                   | 100 ++++++---------------------
 src/xz/main.h                   |   7 --
 src/xz/message.c                |  30 +++++----
 src/xz/message.h                |   8 +--
 src/xz/private.h                |  11 +--
 src/xz/signals.c                |   2 +
 src/xz/signals.h                |  17 +++--
 src/xz/suffix.c                 |   2 +-
 src/xzdec/Makefile.am           |  13 +++-
 src/xzdec/xzdec.c               |  55 +++++----------
 41 files changed, 974 insertions(+), 640 deletions(-)

commit 49cfc8d392cf535f8dd10233225b1fc726fec9ef
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-09-15 21:07:23 +0300

    Fix incorrect use of "restrict".

 src/liblzma/api/lzma/vli.h       | 4 ++--
 src/liblzma/common/vli_decoder.c | 2 +-
 src/liblzma/common/vli_encoder.c | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

commit 15ffd675ab7af84592eb1c23b0e9f4699aa0fd8c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-09-12 14:09:17 +0300

    Fix GCC version check for nothrow attribute.

 src/liblzma/api/lzma.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6bfdd3a88a819f04c8f202e7d3c6f88a01c7d224
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-09-12 14:08:15 +0300

    Updated THANKS.

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

commit 4ab7b16b9573bdfa32279e4adadff684d5cd58ac
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-09-12 14:07:36 +0300

    A few grammar fixes.
    
    Thanks to Christian Weisgerber for pointing out some of these.

 src/liblzma/api/lzma.h                    |  4 ++--
 src/liblzma/api/lzma/vli.h                |  4 ++--
 src/liblzma/common/block_header_encoder.c |  2 +-
 src/liblzma/common/filter_common.c        |  2 +-
 src/liblzma/lz/lz_encoder.h               | 10 +++++-----
 src/xz/message.c                          | 22 +++++++++++-----------
 src/xzdec/xzdec.c                         |  2 +-
 7 files changed, 23 insertions(+), 23 deletions(-)

commit 8905a33daadcd2d6557c83c81c490b827d566c94
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-09-11 17:08:15 +0300

    Updated THANKS.

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

commit 68059334ff435300ab1ce2c616b0eee1b0d88dd9
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-09-11 17:06:32 +0300

    Add PACKAGE_HOMEPAGE to {windows,dos}/config.h to fix build errors.

 dos/config.h     | 3 +++
 windows/config.h | 3 +++
 2 files changed, 6 insertions(+)

commit 221be761f467da76875247bc02d7a1716682075d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-09-11 10:24:09 +0300

    Use $(LN_EXEEXT) in symlinks to executables.
    
    This fixes "make install" on operating systems using
    a suffix for executables.
    
    Cygwin is treated specially. The symlink names won't have
    .exe suffix even though the executables themselves have.
    Thanks to Charles Wilson.

 configure.ac       | 9 +++++++++
 src/xz/Makefile.am | 4 ++--
 2 files changed, 11 insertions(+), 2 deletions(-)

commit 18a4233a53d9b82abac7db7d7804684c5fea9c2c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-09-11 09:25:09 +0300

    Fix a couple of warnings.

 src/liblzma/common/stream_decoder.c            | 2 +-
 src/liblzma/lz/lz_encoder.c                    | 5 +----
 src/liblzma/lzma/lzma_encoder.c                | 2 +-
 src/liblzma/lzma/lzma_encoder_optimum_normal.c | 8 ++++----
 tests/tests.h                                  | 2 +-
 5 files changed, 8 insertions(+), 11 deletions(-)

commit 429910b2ba67611d8df60d1a9da9641bdb5f82b4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-09-05 18:39:21 +0300

    Add OS/2-specific code to physmem.h.
    
    Also move DJGPP-specific code near the code meant
    for other DOS-like systems.

 src/common/physmem.h | 32 +++++++++++++++++++++-----------
 1 file changed, 21 insertions(+), 11 deletions(-)

commit 7aca7b3174bcbba4a4915682ff0cd405d63f5740
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-09-05 01:21:15 +0300

    Updated THANKS.

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

commit 60ccb80c9c4a0d771acc5b7d9d6f32b17fed1071
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-09-05 01:20:29 +0300

    Use sysctl() != -1 instead of !sysctl() to check if
    the function call succeeded.
    
    NetBSD 4.0 returns positive values on success, but
    NetBSD Current and FreeBSD return zero. OpenBSD's
    man page doesn't tell what sysctl() returns on
    success. All these BSDs return -1 on error.
    
    Thanks to Robert Elz and Thomas Klausner.

 src/common/cpucores.h | 2 +-
 src/common/physmem.h  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 173368911cf09ab0b03fc4db8f3d4b81d86dce32
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-09-02 09:43:51 +0300

    Mention in INSTALL that --enable-small doesn't modify CFLAGS.

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

commit 319a0fd7d7e9ebbb71ca6930abfc20777cb4aacc
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-09-01 20:40:01 +0300

    Refactored option parsing.

 src/xz/options.c | 70 ++++++++++++++++++++++++++++----------------------------
 1 file changed, 35 insertions(+), 35 deletions(-)

commit 25adaaa56e2e51a47a910a8d73452414619a2e53
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-09-01 20:23:30 +0300

    Fix options parsing bug in xz.
    
    xz used to reject "xz --lzma2=pb=2," while
    "xz --lzma2=pb=2,," worked. Now both work.

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

commit 5f6dddc6c911df02ba660564e78e6de80947c947
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-09-01 20:20:19 +0300

    Updated TODO.

 TODO | 3 +++
 1 file changed, 3 insertions(+)

commit 655457b9ada5ec7db398c5392e41290f3f332ea8
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-31 21:59:25 +0300

    Revert 43f44160b1ddcbf7e5205c37db09b3bebe7226f9
    and use a fix that works on all systems using
    GNU assembler.
    
    Maybe the assembler code is used e.g. on Solaris x86
    but let's worry about it if this doesn't work on it.

 src/liblzma/check/crc32_x86.S | 7 ++-----
 src/liblzma/check/crc64_x86.S | 7 ++-----
 2 files changed, 4 insertions(+), 10 deletions(-)

commit 162189c3477953805a28f96d3a75cb9ab9417928
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-30 17:29:19 +0300

    Updated THANKS.

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

commit 2331f5f97af3e5897e23da45d9df3d664099c7f8
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-30 17:28:52 +0300

    Add more OS/2 specific info to INSTALL.

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

commit 94c66b3297b3ad307eee93cf6b160e3c43997f11
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-29 14:43:52 +0300

    Use even more hackish way to support thousand separators.
    
    Seems that in addition on Windows and DOS, also OpenBSD
    lacks support for %'d style printf() format strings.
    So far that is the only modern POSIX-like system I know
    with this problem, but after this hack, the thousand
    separator shouldn't be a problem on any system.
    
    Maybe testing if a format string like %'d produces
    reasonable output is invoking undefined behavior on some
    systems, but so far all the problematic systems I've tried
    just print the raw format string (e.g. %'d prints 'd).
    
    Maybe Autoconf test would have been better, but this
    hack works also for cross-compilation, and avoids
    recompilation in case the system libc starts to support
    the thousand separator.

 src/xz/util.c | 36 +++++++++++++++++++++++++-----------
 1 file changed, 25 insertions(+), 11 deletions(-)

commit 3432e9c6aab851da1227b63dce645d7f190c04d8
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-29 13:42:56 +0300

    Updated THANKS.

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

commit 27414daadf5727e8ab942374b5ec1c8990122878
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-29 13:39:21 +0300

    Fix sysctl() usage.
    
    This fixes build on *BSDs and Darwin.
    
    Thanks to Jukka Salmi for the patches.
    Richard Koch reported the problem too.

 m4/lc_cpucores.m4     | 2 +-
 m4/lc_physmem.m4      | 2 +-
 src/common/cpucores.h | 2 +-
 src/common/physmem.h  | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

commit 43f44160b1ddcbf7e5205c37db09b3bebe7226f9
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-29 13:35:23 +0300

    Fix x86 assembler on GCC 3.
    
    Thanks to Karl Berry.

 src/liblzma/check/crc32_x86.S | 7 +++++--
 src/liblzma/check/crc64_x86.S | 7 +++++--
 2 files changed, 10 insertions(+), 4 deletions(-)

commit 682efdc1f9492fdd76c9ce82e7c00ca0768067e8
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-27 18:36:59 +0300

    "make dist" fixes

 Makefile.am | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

commit c8c184db1c95bf70f78256ec6237845a57f342af
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-27 17:08:33 +0300

    Update xz man page date.

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

commit 9756fce565e98b8fa5fe6ead296d84e7601ec254
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-27 17:00:22 +0300

    Fix the debug directory.
    
    6a2eb54092fc625d59921a607ff68cd1a90aa898 and
    71f18e8a066a01dda0c8e5508b135ef104e43e4c required
    some changes that weren't applied in debug.

 debug/Makefile.am   | 5 +++--
 debug/full_flush.c  | 1 +
 debug/known_sizes.c | 1 +
 debug/memusage.c    | 1 +
 debug/sync_flush.c  | 1 +
 5 files changed, 7 insertions(+), 2 deletions(-)

commit 77007a7fb20187fcf3d1dd9839c79ace2d63f2ea
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-27 16:36:40 +0300

    Add missing files to EXTRA_DIST.

 Makefile.am | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

commit 04dcbfdeb921e5f361a4487134e91e23fffbe09d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-27 16:21:22 +0300

    Bumped version to 4.999.9beta.

 src/liblzma/api/lzma/version.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit fd7618611a22f42a6913bc8d518c9bbc9252d6b4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-27 16:17:47 +0300

    Updated THANKS.

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

commit c29e76c0f910fca0a90a50b78d337f6c32623e9d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-27 16:12:52 +0300

    .xz file format specification 1.0.4 (probably).
    
    Thanks to Christian von Roques, Peter Lawler,
    and Jim Meyering for the fixes.

 doc/xz-file-format.txt | 26 +++++++++++++++-----------
 1 file changed, 15 insertions(+), 11 deletions(-)

commit 696d7ee3953beaf4f0ed18e78917ccf300431966
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-27 15:43:54 +0300

    Require GNU libtool 2.2.

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

commit 4c3558aa8305a8f8b6c43b8569eb539717ca9e8d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-27 15:34:45 +0300

    Add "dos" to EXTRA_DIST.

 Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit 35b29e4424ced5a3ababf132283e519080c7b298
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-27 15:23:27 +0300

    Updated TODO.

 TODO | 6 ++++++
 1 file changed, 6 insertions(+)

commit 23414377192c21f3f34c84cdfe0ef0fbd06a1dea
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-27 15:17:00 +0300

    Some xz man page improvements.

 src/xz/xz.1 | 78 ++++++++++++++++++++++++++++++++++++++++++++++++-------------
 1 file changed, 62 insertions(+), 16 deletions(-)

commit 371b04e19fc9051dbaeec51ec0badec6a1f0699d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-27 10:41:01 +0300

    Removed doc/bugs.txt.

 doc/bugs.txt | 46 ----------------------------------------------
 1 file changed, 46 deletions(-)

commit d88c4072b36d3a76f839185799fb1d91037a1b81
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-27 10:40:25 +0300

    Updated README.
    
    It now includes bug reporting instructions/tips.

 README | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++++----------
 1 file changed, 55 insertions(+), 10 deletions(-)

commit 92e536d8b8d33a6b12d0802bcd7be4437046f13e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-27 10:21:18 +0300

    Fix a typo in FAQ.
    
    Thanks to Jim Meyering.
    
    (From now on, I try to always remember to put
    the relevant thanks to commit messages.)

 doc/faq.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 3e2ba8b58585743e59251e69ad2783eb08357079
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-27 10:13:46 +0300

    Updates to liblzma API headers.
    
    Added lzma_nothrow for every function. It adds
    throw() when the header is used in C++ code.
    
    Some lzma_attrs were added or removed.
    
    Lots of comments were improved.

 src/liblzma/api/lzma.h              | 20 ++++++++
 src/liblzma/api/lzma/base.h         | 48 +++++++++---------
 src/liblzma/api/lzma/block.h        | 38 ++++++++-------
 src/liblzma/api/lzma/check.h        | 22 +++++----
 src/liblzma/api/lzma/container.h    | 36 ++++++++------
 src/liblzma/api/lzma/filter.h       | 81 +++++++++++++++++++------------
 src/liblzma/api/lzma/index.h        | 97 ++++++++++++++++++++++---------------
 src/liblzma/api/lzma/index_hash.h   | 14 ++++--
 src/liblzma/api/lzma/lzma.h         | 87 +++++++++++++++++----------------
 src/liblzma/api/lzma/stream_flags.h | 12 ++---
 src/liblzma/api/lzma/version.h      | 10 ++--
 src/liblzma/api/lzma/vli.h          |  7 +--
 12 files changed, 275 insertions(+), 197 deletions(-)

commit 8e8ebc17c535a1f8846718059b48417409c37050
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-18 00:30:09 +0300

    Install faq.txt.

 Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit b198e770a146e4a41f91a93f0b233713f2515848
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-18 00:26:48 +0300

    Updated faq.txt.
    
    Some questions worth answering were removed, because I
    currently don't have good up to date answers to them.

 doc/faq.txt | 239 +++++++++++++++++++-----------------------------------------
 1 file changed, 73 insertions(+), 166 deletions(-)

commit fe111a25cd788d31b581996e4533910388a7f0a9
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-17 22:45:50 +0300

    Some xz man changes.

 src/xz/xz.1 | 88 ++++++++++++++++++++++++++++++-------------------------------
 1 file changed, 43 insertions(+), 45 deletions(-)

commit 10242a21e9abda0c5c6a03501703cc40b8a699a5
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-16 22:15:42 +0300

    Updated THANKS.

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

commit 3ce1916c83041113b9cad9ead5c97a527cf8aa1d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-16 22:15:13 +0300

    Fix data corruption in LZ/LZMA2 encoder.
    
    Thanks to Jonathan Stott for the bug report.

 src/liblzma/lz/lz_encoder.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 66da129c8ec33dd66acc92f113f7c1ca740ca81a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-13 15:15:37 +0300

    Updated INSTALL and PACKAGERS to match the changes
    made in --enable-dynamic.

 INSTALL   | 20 ++++++++++++++++----
 PACKAGERS | 11 ++++++-----
 2 files changed, 22 insertions(+), 9 deletions(-)

commit 8238c4b2402f952c4e492e5b778aa272e57b6705
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-13 15:03:46 +0300

    Link lzmainfo against shared liblzma by default.

 src/lzmainfo/Makefile.am | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 71f18e8a066a01dda0c8e5508b135ef104e43e4c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-13 15:00:21 +0300

    Make --enable-dynamic a tristate option.
    
    Some programs will by default be linked against static
    liblzma and some against shared liblzma. --enable-dynamic
    now allows overriding the default to both directions
    (all dynamic or all static) even when building both
    shared and static liblzma.
    
    This is quite messy compared to how simple thing it is supposed
    to be. The complexity is mostly due to Windows support.

 configure.ac | 77 ++++++++++++++++++++++++++++++++++++++++++++----------------
 1 file changed, 57 insertions(+), 20 deletions(-)

commit 5aa4678b2342dcfc1d2b31aa9fa4f39c539e4b61
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-13 12:56:47 +0300

    Fix xz Makefile.am for the man page.
    
    install-exec-hook -> install-data-hook

 src/xz/Makefile.am | 2 ++
 1 file changed, 2 insertions(+)

commit e51b4e49e800bd84e6d589dca2964d3985e88139
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-13 12:55:45 +0300

    Add lzmainfo for backward compatibility with LZMA Utils.
    
    lzmainfo now links against static liblzma. In contrast
    to other command line tools in XZ Utils, linking lzmainfo
    against static liblzma by default is dumb. This will be
    fixed once I have fixed some related issues in configure.ac.

 configure.ac             |   1 +
 src/Makefile.am          |   2 +-
 src/lzmainfo/Makefile.am |  29 ++++++
 src/lzmainfo/lzmainfo.1  |  55 +++++++++++
 src/lzmainfo/lzmainfo.c  | 242 +++++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 328 insertions(+), 1 deletion(-)

commit a4165d0584376d948c213ec93c6065d24ff6a5e7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-13 12:42:36 +0300

    Sync some error messages from xz to xzdec.
    
    Make xz error message translation usable outside
    xz (at least in upcoming lzmainfo).

 src/xz/main.c     | 4 ++--
 src/xzdec/xzdec.c | 6 +++---
 2 files changed, 5 insertions(+), 5 deletions(-)

commit df636eb4e066b4e154ce8e66e82c87ba1db652a6
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-13 09:37:21 +0300

    Add xz man page to manfiles in toplevel Makefile.am.

 Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit 180bdf58ea5bb07941e0a99b304d9aa832198748
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-13 09:37:01 +0300

    Fix first line of xz man page.

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

commit e1ce2291e759b50ebfcf7cbbcc04cd098f1705a4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-10 11:22:31 +0300

    Added a rough version of the xz man page.

 src/xz/Makefile.am |   15 +
 src/xz/xz.1        | 1206 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 1221 insertions(+)

commit e71903fc6101f1c039d702e335b08aad1e1b4100
Author: Jonathan Nieder <jrnieder@gmail.com>
Date:   2009-08-09 13:41:20 -0500

    “xzdiff a.xz b.xz” always fails
    
    Attempts to compare two compressed files result in no output and
    exit status 2.
    
    Instead of going to standard output, ‘diff’ output is being
    captured in the xz_status variable along with the exit status from
    the decompression commands.  Later, when this variable is examined
    for nonzero status codes, numerals from dates in the ‘diff’ output
    make it appear as though decompression failed.
    
    So let the ‘diff’ output leak to standard output with another file
    descriptor.  (This trick is used in all similar contexts elsewhere
    in xzdiff and in the analogous context in gzip’s zdiff script.)

 src/scripts/xzdiff.in | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1d314b81aa5b0c4530638ffabd4e0edb52e5362c
Author: Jonathan Nieder <jrnieder@gmail.com>
Date:   2009-08-09 13:22:12 -0500

    xzless: Support compressed standard input
    
    It can be somewhat confusing that
    
    	less < some_file.txt
    
    works fine, whereas
    
    	xzless < some_file.txt.xz
    
    does not.  Since version 429, ‘less’ allows a filter specified in
    the LESSOPEN environment variable to preprocess its input even if
    it comes from standard input, if $LESSOPEN begins with ‘|-’.  So
    set $LESSOPEN to take advantage of this feature.
    
    Check less’s version at runtime so xzless can continue to work
    with older versions.

 src/scripts/xzless.in | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

commit a7f5d2fe4826ac68839d00059f05004fb81d5c69
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-09 20:57:46 +0300

    GPLv2+ not GPLv2 for Doxyfile.in is probably OK.

 Doxyfile.in | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b735cde20cc14857136ae65a0e5d336ed7ddc862
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-02 00:27:29 +0300

    Added a copyright notice to Doxyfile.in since it contains
    lots of comments from Doxygen.
    
    It seems that the Doxygen authors' intent is to not apply
    their copyright on generated files, but since it doesn't
    matter for XZ Utils at all, better safe than sorry.

 Doxyfile.in | 3 +++
 1 file changed, 3 insertions(+)

commit 0fd157cc008446adfc8f91394f5503868025a642
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-02 00:11:37 +0300

    Updated THANKS.

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

commit b198da96ff9ac8c89b466b4d196c5f3fe1c7904f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-08-02 00:10:22 +0300

    Updated TODO.

 TODO | 4 ++++
 1 file changed, 4 insertions(+)

commit 669413bb2db954bbfde3c4542fddbbab53891eb4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-30 12:25:55 +0300

    Updated THANKS.

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

commit dbbd8fb870ae789d96497911006c869d37148c15
Author: Jonathan Nieder <jrnieder@gmail.com>
Date:   2009-07-28 17:37:24 -0500

    xzdiff: add missing ;; to case statement

 src/scripts/xzdiff.in | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit adbad2d16cb5909f85d4a429011005613ea62ffe
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-24 13:15:06 +0300

    Added history.txt to doc_DATA.

 Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit e0236f12569eb36f9b81ce7a1e52e0f73698ac27
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-24 12:00:40 +0300

    Updated .gitignore files.

 .gitignore    | 36 +++++++++++++++++++-----------------
 po/.gitignore |  3 +++
 2 files changed, 22 insertions(+), 17 deletions(-)

commit 2f34fb269265e3aba43a2a9c734020a45268826d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-24 11:34:02 +0300

    Minor improvements to COPYING.

 COPYING | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

commit 0db1befcfbc120377df4b89923762f16d25f548a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-23 19:10:55 +0300

    Fix incorrect usage of getopt_long(), which caused
    invalid memory access if XZ_OPT was defined.

 src/xz/args.c | 1 -
 1 file changed, 1 deletion(-)

commit 8f8ec942d6d21ada2096eaf063411bc8bc7e2d48
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-20 15:43:32 +0300

    Avoid internal error with --format=xz --lzma1.

 src/xz/coder.c | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

commit 99f9e879a6a8bb54a65da99c12e0f390216c152a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-19 13:14:20 +0300

    Major documentation update.
    
    Installation and packaging instructions were added.
    README and other generic docs were revised.
    
    Some of the documentation files are now installed to $docdir.

 AUTHORS         |  35 +++---
 ChangeLog       |   7 +-
 INSTALL         | 327 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 INSTALL.generic | 302 +++++++++++++++++++++++++++++++++++++++++++++++++++
 Makefile.am     |  11 ++
 PACKAGERS       | 278 +++++++++++++++++++++++++++++++++++++++++++++++
 README          | 263 ++++++++++++++++++++-------------------------
 THANKS          |  17 +--
 8 files changed, 1070 insertions(+), 170 deletions(-)

commit ef4cf1851de89022cba5674784f1a8f6343c15b0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-19 11:09:31 +0300

    Added missing author notice to xzless.in.

 src/scripts/xzless.in | 1 +
 1 file changed, 1 insertion(+)

commit 4c9c989d45b188667799a7a1d6c728ed43f7bf77
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-18 18:54:55 +0300

    Use AC_CONFIG_AUX_DIR to clean up the toplevel directory
    a little.
    
    Fixed a related bug in the toplevel Makefile.am.
    
    Added the build-aux directory to .gitignore.

 .gitignore   | 1 +
 Makefile.am  | 1 -
 configure.ac | 3 ++-
 3 files changed, 3 insertions(+), 2 deletions(-)

commit 366e436090a7a87215e9bf0e3ddcd55f05b50587
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-18 14:34:08 +0300

    Updated the totally outdated TODO file.

 TODO | 117 ++++++++++++++++---------------------------------------------------
 1 file changed, 27 insertions(+), 90 deletions(-)

commit 64e498c89d8b9966e8663f43bf64d47c26c55c62
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-18 11:26:39 +0300

    Added public domain notice into a few files.

 src/common/common_w32res.rc   | 9 ++++++++-
 src/liblzma/liblzma.pc.in     | 7 +++++++
 src/liblzma/liblzma_w32res.rc | 7 +++++++
 src/xz/xz_w32res.rc           | 7 +++++++
 src/xzdec/xzdec_w32res.rc     | 7 +++++++
 5 files changed, 36 insertions(+), 1 deletion(-)

commit a35755c5de808df027675688855d1b621a4fb428
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-14 21:10:36 +0300

    Allow extra commas in filter-specific options on xz command line.
    
    This may slightly ease writing scripts that construct
    filter-specific option strings dynamically.

 src/xz/options.c | 7 +++++++
 1 file changed, 7 insertions(+)

commit 98f3cac1ad31191c5160a7e48398bf85141e941c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-14 18:04:31 +0300

    Accept --lzma2=preset=6e where "e" is equivalent to --extreme
    when no custom chain is in use.

 src/xz/options.c | 80 +++++++++++++++++++++++++++++++++++++++++---------------
 1 file changed, 59 insertions(+), 21 deletions(-)

commit d873a09e956363e54bf58c577c8f7e487b6fb464
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-12 19:08:30 +0300

    Add dist-hook to create ChangeLog from the commit log,
    and to conver the man pages to PDF and plain text, which
    may be convenient to those who cannot render man pages.

 Makefile.am | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

commit cd69a5a6c16c289f6f8e2823b03c72289472270f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-10 11:39:38 +0300

    BCJ filters: Reject invalid start offsets with LZMA_OPTIONS_ERROR.
    
    This is a quick and slightly dirty fix to make the code
    conform to the latest file format specification. Without
    this patch, it's possible to make corrupt files by
    specifying start offset that is not a multiple of the
    filter's alignment. Custom start offset is almost never
    used, so this was only a minor bug.
    
    The xz command line tool doesn't validate the start offset,
    so one will get a bit unclear error message if trying to use
    an invalid start offset.

 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   | 5 ++++-
 src/liblzma/simple/simple_private.h | 3 ++-
 src/liblzma/simple/sparc.c          | 2 +-
 src/liblzma/simple/x86.c            | 2 +-
 8 files changed, 12 insertions(+), 8 deletions(-)

commit eed9953732b801f6c97317fb3160445a8754180b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-10 11:33:21 +0300

    Look for full command names instead of substrings
    like "un", "cat", and "lz" when determining if
    xz is run as unxz, xzcat, lzma, unlzma, or lzcat.
    
    This is to ensure that if xz is renamed (e.g. via
    --program-transform-name), it doesn't so easily
    work in wrong mode.

 src/xz/args.c | 22 +++++++++++++---------
 1 file changed, 13 insertions(+), 9 deletions(-)

commit 6f62fa88f4ff7ba78565c314c0e6e71c498fa658
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-08 23:06:46 +0300

    Updated THANKS.

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

commit 1754b7e03e2aa7e2e0196807fe8b0f3f5a637b0e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-08 23:05:29 +0300

    Portability improvement to version.sh.

 version.sh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 3bdb53792c0e3e3febe9370e56eda5b08f89410f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-08 22:50:16 +0300

    Remove --force from xzdec.
    
    It was ignored for compatibility with xz, but now that
    --decompress --stdout --force copies unrecognized files
    as is to stdout, simply ignoring --force in xzdec would
    be wrong. xzdec will not support copying unrecognized
    data as is to stdout, so it cannot support --force.

 src/xzdec/xzdec.1 | 5 -----
 src/xzdec/xzdec.c | 5 +----
 2 files changed, 1 insertion(+), 9 deletions(-)

commit 5f16ef4abf220028a9ddbcb138217597a9455f62
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-06 10:36:04 +0300

    Use sed instead of $(SED) so that we don't need to
    use AC_PROG_SED. We don't do anything fancy with sed,
    so this should work OK. libtool 2.2 sets SED but 1.5
    doesn't, so $(SED) happened to work when using libtool 2.2.

 src/liblzma/Makefile.am |  2 +-
 src/scripts/Makefile.am | 28 ++++++++++++++--------------
 src/xz/Makefile.am      |  6 +++---
 src/xzdec/Makefile.am   |  6 +++---
 4 files changed, 21 insertions(+), 21 deletions(-)

commit 96e4b257e101d72072d43e144897d92920270669
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-05 22:25:17 +0300

    Major update to the xzgrep and other scripts based on
    the latest versions found from gzip CVS repository.
    
    configure will try to find a POSIX shell to be used by
    the scripts. This should ease portability on systems
    which have pre-POSIX /bin/sh.
    
    xzgrep and xzdiff support .xz, .lzma, .gz, and .bz2 files.
    xzmore and xzless support only .xz and .lzma files.
    
    The name of the xz executable used in these scripts is
    now correct even if --program-transform-name has been used.

 configure.ac            |  14 ++++
 m4/posix-shell.m4       |  63 ++++++++++++++++
 src/scripts/Makefile.am |  24 +++---
 src/scripts/xzdiff      |  67 -----------------
 src/scripts/xzdiff.1    |  58 ++++++++------
 src/scripts/xzdiff.in   | 172 ++++++++++++++++++++++++++++++++++++++++++
 src/scripts/xzgrep      | 123 ------------------------------
 src/scripts/xzgrep.1    |  85 ++++++++++++---------
 src/scripts/xzgrep.in   | 196 ++++++++++++++++++++++++++++++++++++++++++++++++
 src/scripts/xzless.1    |  66 ++++++++++++++++
 src/scripts/xzless.in   |  51 +++++++++++++
 src/scripts/xzmore      |  74 ------------------
 src/scripts/xzmore.1    |  64 +++++++---------
 src/scripts/xzmore.in   |  78 +++++++++++++++++++
 14 files changed, 766 insertions(+), 369 deletions(-)

commit 25cc7a6e8c2506a0d80084a4c1c67d33e7439100
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-05 19:26:53 +0300

    Use @PACKAGE_HOMEPAGE@ in liblzma.pc.in.

 src/liblzma/liblzma.pc.in | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 18c10c30d2833f394cd7bce0e6a821044b15832f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-04 00:40:44 +0300

    Make "xz --decompress --stdout --force" copy unrecognized
    files as is to standard output.
    
    This feature is needed to be more compatible with gzip's
    behavior. This was more complicated to implement than it
    sounds, because the way liblzma is able to return errors with
    files of only a few bytes in size. xz now has its own file
    type detection code and no longer uses lzma_auto_decoder().

 src/xz/coder.c | 213 +++++++++++++++++++++++++++++++++++++++++++++++----------
 1 file changed, 178 insertions(+), 35 deletions(-)

commit 0a289c01ac821ea9c4250aa906b0ae3cfa953633
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-02 14:30:38 +0300

    Define PACKAGE_HOMEPAGE in configure.ac and use it in
    xz and xzdec.
    
    Use also PACKAGE_NAME instead of hardcoding "XZ Utils".

 configure.ac      | 5 +++++
 src/xz/message.c  | 4 ++--
 src/xzdec/xzdec.c | 4 ++--
 3 files changed, 9 insertions(+), 4 deletions(-)

commit 5cc99db5bae8633f85559e5cdaef4cd905a4ee9c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-07-01 12:21:24 +0300

    Avoid visibility related compiler warnings on Windows.

 configure.ac | 20 +++++++++-----------
 1 file changed, 9 insertions(+), 11 deletions(-)

commit 7653d1cf48080e63b189ed9d58dea0e82b6b1c5e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-30 17:14:39 +0300

    Use static liblzma by default also for tests.

 tests/Makefile.am | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit f42ee981668b545ab6d06c6072e262c29605273c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-30 17:09:57 +0300

    Build system fixes
    
    Don't use libtool convenience libraries to avoid recently
    discovered long-standing subtle but somewhat severe bugs
    in libtool (at least 1.5.22 and 2.2.6 are affected). It
    was found when porting XZ Utils to Windows
    <http://lists.gnu.org/archive/html/libtool/2009-06/msg00070.html>
    but the problem is significant also e.g. on GNU/Linux.
    
    Unless --disable-shared is passed to configure, static
    library built from a set of convenience libraries will
    contain PIC objects. That is, while libtool builds non-PIC
    objects too, only PIC objects will be used from the
    convenience libraries. On 32-bit x86 (tested on mobile XP2400+),
    using PIC instead of non-PIC makes the decompressor 10 % slower
    with the default CFLAGS.
    
    So while xz was linked against static liblzma by default,
    it got the slower PIC objects unless --disable-shared was
    used. I tend develop and benchmark with --disable-shared
    due to faster build time, so I hadn't noticed the problem
    in benchmarks earlier.
    
    This commit also adds support for building Windows resources
    into liblzma and executables.

 configure.ac                        | 34 ++++++++++------
 src/liblzma/Makefile.am             | 79 +++++++++++++++++++++++++++++--------
 src/liblzma/check/Makefile.am       | 47 ----------------------
 src/liblzma/check/Makefile.inc      | 51 ++++++++++++++++++++++++
 src/liblzma/common/Makefile.am      | 78 ------------------------------------
 src/liblzma/common/Makefile.inc     | 67 +++++++++++++++++++++++++++++++
 src/liblzma/common/common.h         | 16 +++++---
 src/liblzma/delta/Makefile.am       | 28 -------------
 src/liblzma/delta/Makefile.inc      | 23 +++++++++++
 src/liblzma/lz/Makefile.am          | 29 --------------
 src/liblzma/lz/Makefile.inc         | 21 ++++++++++
 src/liblzma/lzma/Makefile.am        | 51 ------------------------
 src/liblzma/lzma/Makefile.inc       | 43 ++++++++++++++++++++
 src/liblzma/rangecoder/Makefile.am  | 26 ------------
 src/liblzma/rangecoder/Makefile.inc | 21 ++++++++++
 src/liblzma/simple/Makefile.am      | 51 ------------------------
 src/liblzma/simple/Makefile.inc     | 47 ++++++++++++++++++++++
 src/liblzma/subblock/Makefile.am    | 26 ------------
 src/liblzma/subblock/Makefile.inc   | 20 ++++++++++
 src/xz/Makefile.am                  | 11 +++++-
 src/xzdec/Makefile.am               | 20 +++++++++-
 21 files changed, 417 insertions(+), 372 deletions(-)

commit 89dac1db6f168d7469cfbc4432651d4724c5c0de
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-29 22:19:51 +0300

    Added a comment about "autoconf -fi" to autogen.sh.

 autogen.sh | 3 +++
 1 file changed, 3 insertions(+)

commit 6e685aae4594bc0af1b5032e01bb37d0edaa3ebd
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-28 10:04:24 +0300

    Add -no-undefined to get shared liblzma on Windows.

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

commit 73f560ee5fa064992b76688d9472baf139432540
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-27 22:57:15 +0300

    Make physmem() work on Cygwin 1.5 and older.

 src/common/physmem.h | 77 +++++++++++++++++++++++++++-------------------------
 1 file changed, 40 insertions(+), 37 deletions(-)

commit 7ff0004fbce24ae72eddfe392828ffd7d4639ed1
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-27 17:28:01 +0300

    Moved the Windows resource files outside the windows directory
    to prepare for building them with Autotools.

 src/common/common_w32res.rc   | 46 +++++++++++++++++++++++++++++++++++++++++++
 src/liblzma/liblzma_w32res.rc |  5 +++++
 src/xz/xz_w32res.rc           |  5 +++++
 src/xzdec/lzmadec_w32res.rc   |  5 +++++
 src/xzdec/xzdec_w32res.rc     |  5 +++++
 windows/Makefile              | 35 +++++++++++++++++---------------
 windows/common.rc             | 46 -------------------------------------------
 windows/liblzma.rc            |  5 -----
 windows/lzmadec.rc            |  5 -----
 windows/xz.rc                 |  5 -----
 windows/xzdec.rc              |  5 -----
 11 files changed, 85 insertions(+), 82 deletions(-)

commit 449c634674f35336a4815d398172e447659a135e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-27 13:05:03 +0300

    Added missing $(EXEEXT).

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

commit 792db79f27ad9ab1fb977e23be65c7761f545752
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-27 12:32:40 +0300

    Create correct symlinks even when
    --program-{prefix,suffix,transform} is passed to configure.

 src/scripts/Makefile.am | 80 ++++++++++++++++++++++++++++---------------------
 src/xz/Makefile.am      | 21 ++++++++-----
 src/xzdec/Makefile.am   |  9 ++++--
 3 files changed, 65 insertions(+), 45 deletions(-)

commit 0adc72feb84f5b903f6ad9d3f759b1c326fafc6b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-27 10:02:24 +0300

    Silence a compiler warning on DOS-like systems.

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

commit ad12edc95254ede3f0cb8dec8645e8789e984c4f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-27 09:35:15 +0300

    Updated the filenames in POTFILES.in too.

 po/POTFILES.in | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit b2b1f867532732fe9969131f8713bdd6b0731763
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-27 00:43:06 +0300

    Hopefully improved portability of the assembler code in
    Autotools based builds on Windows.

 src/liblzma/check/crc32_x86.S | 8 +++++++-
 src/liblzma/check/crc64_x86.S | 8 +++++++-
 2 files changed, 14 insertions(+), 2 deletions(-)

commit c393055947247627a09b6a6b8f20aa0c32f9be16
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-26 21:17:29 +0300

    Updated THANKS (most of today's commits are based on
    Charles Wilson's patches).

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

commit da0af22e4b4139b8a10710945f8b245b3a77c97d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-26 21:00:35 +0300

    Updated comments to match renamed files.

 src/xz/coder.c   | 2 +-
 src/xz/coder.h   | 2 +-
 src/xz/file_io.c | 2 +-
 src/xz/file_io.h | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

commit 65014fd211dfbd4be48685998cb5a12aaa29c8d2
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-26 20:49:54 +0300

    Rename process.[hc] to coder.[hc] and io.[hc] to file_io.[hc]
    to avoid problems on systems with system headers with those
    names.

 dos/Makefile       |   4 +-
 src/xz/Makefile.am |   8 +-
 src/xz/coder.c     | 488 ++++++++++++++++++++++++++++++++++++
 src/xz/coder.h     |  57 +++++
 src/xz/file_io.c   | 716 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 src/xz/file_io.h   |  86 +++++++
 src/xz/io.c        | 716 -----------------------------------------------------
 src/xz/io.h        |  86 -------
 src/xz/private.h   |   4 +-
 src/xz/process.c   | 488 ------------------------------------
 src/xz/process.h   |  57 -----
 windows/Makefile   |   4 +-
 12 files changed, 1357 insertions(+), 1357 deletions(-)

commit 5e1257466dcb66f1d7a3f71814a5ad885cba43e8
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-26 20:43:36 +0300

    Rename process_file() to coder_run().

 src/xz/main.c    | 6 +++---
 src/xz/process.c | 6 +++---
 src/xz/process.h | 5 ++---
 3 files changed, 8 insertions(+), 9 deletions(-)

commit cad62551c5fa9865dbe0841a0b3bc729c4fbe8fc
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-26 20:36:45 +0300

    Ugly hack to make it possible to use the thousand separator
    format character with snprintf() on POSIX systems but not
    on non-POSIX systems and still keep xgettext working.

 dos/Makefile     | 16 +++-------------
 src/xz/message.c | 17 +++++++++--------
 src/xz/process.c | 30 +++++++++++++++---------------
 src/xz/util.c    | 34 ++++++++++++++++++++++++++++++++++
 src/xz/util.h    | 20 ++++++++++++++++++++
 windows/Makefile | 13 +++----------
 6 files changed, 84 insertions(+), 46 deletions(-)

commit fe378d47074b16c52b00fe184d119287c68ce2e7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-26 15:40:40 +0300

    Added missing source files to windows/Makefile.

 windows/Makefile | 2 ++
 1 file changed, 2 insertions(+)

commit 390a6408563067613b29de895cb40e4d0386d62c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-26 15:37:53 +0300

    Basic support for building with Cygwin and MinGW using
    the Autotools based build system. It's not good yet, more
    fixes will follow.

 configure.ac                  |  7 +++++++
 src/liblzma/api/lzma.h        |  7 +++++--
 src/liblzma/check/crc32_x86.S |  7 ++++---
 src/liblzma/check/crc64_x86.S |  7 ++++---
 src/liblzma/common/common.h   |  2 +-
 windows/Makefile              | 16 +++++++---------
 6 files changed, 28 insertions(+), 18 deletions(-)

commit 1c9360b7d1197457aaad2f8888b99f1149861579
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-26 14:47:31 +0300

    Fix @variables@ to $(variables) in Makefile.am files.
    Fix the ordering of libgnu.a and LTLIBINTL on the linker
    command line and added missing LTLIBINTL to tests/Makefile.am.

 debug/Makefile.am                  | 12 ++++++------
 src/liblzma/check/Makefile.am      |  4 ++--
 src/liblzma/common/Makefile.am     | 16 ++++++++--------
 src/liblzma/delta/Makefile.am      |  4 ++--
 src/liblzma/lz/Makefile.am         |  6 +++---
 src/liblzma/lzma/Makefile.am       |  8 ++++----
 src/liblzma/rangecoder/Makefile.am |  4 ++--
 src/liblzma/simple/Makefile.am     |  4 ++--
 src/liblzma/subblock/Makefile.am   |  4 ++--
 src/xz/Makefile.am                 | 21 +++++++++++----------
 src/xzdec/Makefile.am              | 19 ++++++++++---------
 tests/Makefile.am                  | 12 +++++++-----
 12 files changed, 59 insertions(+), 55 deletions(-)

commit d45615c555e250209ebb55aa3649abe790f1eeac
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-26 14:20:02 +0300

    Allow to explicitly specify autotool versions in autogen.sh.

 autogen.sh | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit eaf8367368a329afa48785380f9dca6b681f3397
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-26 14:18:32 +0300

    Add version.sh to EXTRA_DIST.

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

commit b317b218e2d383dd27a700094c0de4510540ea18
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-24 20:14:10 +0300

    Support HW_PHYSMEM64

 src/common/physmem.h | 30 +++++++++++++++++++-----------
 1 file changed, 19 insertions(+), 11 deletions(-)

commit ae82dde5d9cc60c80cc89601b6c51cc1611d48e7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-24 13:01:59 +0300

    Cast a char argument to isspace() to unsigned char.

 src/xz/args.c | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

commit 1735d31ea347210e914df038eeea4b2626e76e42
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-05 13:46:26 +0300

    A few more spelling fixes. Released the .xz spec 1.0.3.

 doc/xz-file-format.txt | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

commit 8ed156ce894966103e895aa08f2a9fb912f6fad5
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-04 23:42:12 +0300

    Added xzdec man page.

 src/xzdec/Makefile.am |  11 ++++
 src/xzdec/xzdec.1     | 173 ++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 184 insertions(+)

commit f6df39afaa84f71439507178a49b2a5dda6e824c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-04 23:26:47 +0300

    Harmonized xzdec --memory with xz --memory and made
    minor cleanups.

 src/xzdec/xzdec.c | 74 +++++++++++++++++++++++++++++++++++++++----------------
 1 file changed, 53 insertions(+), 21 deletions(-)

commit 1774f27c61ce294a56712ca2f4785f90a62441bc
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-04 22:59:55 +0300

    Fix purporse -> purpose. Thanks to Andrew Dudman.
    Released .xz spec 1.0.2 due to this fix too.

 THANKS                    | 1 +
 doc/xz-file-format.txt    | 8 +++++---
 src/liblzma/liblzma.pc.in | 2 +-
 windows/Makefile          | 2 +-
 4 files changed, 8 insertions(+), 5 deletions(-)

commit cb613455642f48fb51059e22018615f64c59b70f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-06-01 14:53:57 +0300

    The .xz file format version 1.0.1

 doc/xz-file-format.txt | 29 ++++++++++++++++++++++-------
 1 file changed, 22 insertions(+), 7 deletions(-)

commit 083c23c680ff844846d177cfc58bb7a874e7e6b9
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-05-26 14:48:48 +0300

    Make the raw value of the Check field available to applications
    via lzma_block structure.
    
    This changes ABI but not doesn't break API.

 src/liblzma/api/lzma/block.h              | 17 ++++++++++++++++
 src/liblzma/common/block_buffer_encoder.c |  1 +
 src/liblzma/common/block_decoder.c        | 34 ++++++++++++++-----------------
 src/liblzma/common/block_encoder.c        | 21 ++++++++-----------
 4 files changed, 42 insertions(+), 31 deletions(-)

commit b4f5c814090dc07d4350453576305e41eb9c998d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-05-23 16:57:21 +0300

    Remove undocumented alternative option names --bcj, --ppc,
    and --itanium.

 src/xz/args.c | 3 ---
 1 file changed, 3 deletions(-)

commit b1edee2cdc7ef4411b1a21c07094ec763f071281
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-05-23 15:12:23 +0300

    Add support for specifying the BCJ filter start offset
    in the xz command line tool.

 src/xz/args.c    | 36 +++++++++++++++++++++---------------
 src/xz/message.c | 14 ++++++++------
 src/xz/options.c | 40 ++++++++++++++++++++++++++++++++++++++++
 src/xz/options.h |  7 +++++++
 4 files changed, 76 insertions(+), 21 deletions(-)

commit 72aa0e9c5f4289f10ef5bf240a9448d3017f1ceb
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-05-23 14:51:09 +0300

    Updated THANKS.

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

commit dcedb6998cefeca6597dd1219328a3abf5acf66d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-05-22 16:40:50 +0300

    Added support for --quiet and --no-warn to xzdec.
    Cleaned up the --help message a little.

 src/xzdec/xzdec.c | 76 +++++++++++++++++++++++++++++++++++--------------------
 1 file changed, 49 insertions(+), 27 deletions(-)

commit 5f735dae80aa629853f4831d7b84ec1c614979eb
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-05-22 15:11:52 +0300

    Use the 40 % of RAM memory usage limit in xzdec too.
    
    Update the memory usage info text in --help to match
    the text in xz --long-help.

 src/xzdec/xzdec.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit b60376249e0c586910c4121fab4f791820cc1289
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-05-22 14:43:00 +0300

    Add --no-warn.

 src/xz/args.c    |  8 +++++++-
 src/xz/main.c    | 17 +++++++++++++++++
 src/xz/main.h    |  6 ++++++
 src/xz/message.c |  4 ++++
 4 files changed, 34 insertions(+), 1 deletion(-)

commit b4f92f522d4b854c0adb7c38be7531e1a6a7b008
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-05-22 14:27:40 +0300

    Fix a comment.

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

commit 4dd21d23f22569285ae706b58b0e5904b8db1839
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-05-22 14:21:20 +0300

    Remove the --info option, which was an alias for --list.

 src/xz/args.c | 1 -
 1 file changed, 1 deletion(-)

commit 8836139b63ce774bdd62abf17ab69b290e08229e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-05-22 12:27:43 +0300

    If xz is run as lzma, unlzma, or lzcat, simply imply
    --format=lzma. This means that xz emulating lzma
    doesn't decompress .xz files, while before this
    commit it did. The new way is slightly simpler in
    code and especially in upcoming documentation.

 src/xz/args.c | 17 ++++++-----------
 1 file changed, 6 insertions(+), 11 deletions(-)

commit b0063023f8adb06ea735ec4af5c6f5b7bdb8e84d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-05-22 11:29:50 +0300

    Make the default memory usage limit 40 % of RAM for both
    compressing and decompressing. This should be OK now that
    xz automatically scales down the compression settings if
    they would exceed the memory usage limit (earlier, the limit
    for compression was increased to 90 % because low limit broke
    scripts that used "xz -9" on systems with low RAM).
    
    Support spcifying the memory usage limit as a percentage
    of RAM (e.g. --memory=50%).
    
    Support --threads=0 to reset the thread limit to the default
    value (number of available CPU cores). Use UINT32_MAX instead
    of SIZE_MAX as the maximum in args.c. hardware.c was already
    expecting uint32_t value.
    
    Cleaned up the output of --help and --long-help.

 src/xz/args.c     | 28 +++++++++++++-----
 src/xz/hardware.c | 86 +++++++++++++++++++++++--------------------------------
 src/xz/hardware.h | 10 +++----
 src/xz/message.c  | 28 +++++++++---------
 src/xz/process.c  | 18 +++++-------
 5 files changed, 82 insertions(+), 88 deletions(-)

commit 071b825b23911a69dd1cd2f8cda004ef8a781fae
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-05-21 17:22:01 +0300

    Support special value "max" where xz and xzdec accept an integer.
    Don't round the memory usage limit in xzdec --help to avoid
    an integer overflow and to not give wrong impression that
    the limit is high enough when it may not actually be.

 src/xz/util.c     | 4 ++++
 src/xzdec/xzdec.c | 6 +++++-
 2 files changed, 9 insertions(+), 1 deletion(-)

commit 03ca67fd37dd43fa7f590de340899cd497c10802
Author: ABCD <en.abcd@gmail.com>
Date:   2009-05-20 17:31:18 -0400

    Install lzdiff, lzgrep, and lzmore as symlinks
    
    This adds lzdiff, lzgrep, and lzmore to the list of symlinks to install.
    It also installs symlinks for the manual pages and removes the new
    symlinks on uninstall.

 src/scripts/Makefile.am | 16 ++++++++++++++--
 1 file changed, 14 insertions(+), 2 deletions(-)

commit a6f43e64128a6da5cd641de1e1e527433b3e5638
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-05-02 16:10:14 +0300

    Use a GCC-specific #pragma instead of GCC-specific
    -Wno-uninitialized to silence a bogus warning.

 configure.ac                  | 13 -------------
 src/liblzma/check/Makefile.am |  5 -----
 src/liblzma/check/sha256.c    |  5 +++++
 3 files changed, 5 insertions(+), 18 deletions(-)

commit f6ce63ebdb45a857c8949960c83c9580ae888951
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-05-02 14:46:50 +0300

    Removed --disable-encoder and --disable-decoder. Use the values
    given to --enable-encoders and --enable-decoders to determine
    if any encoder or decoder support is wanted.

 configure.ac | 48 ++++++++----------------------------------------
 1 file changed, 8 insertions(+), 40 deletions(-)

commit be06858d5cf8ba46557395035d821dc332f3f830
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-05-01 11:28:52 +0300

    Remove docs that are too outdated to be updated
    (rewrite will be better).

 doc/liblzma-advanced.txt | 324 -----------------------------------------------
 doc/liblzma-hacking.txt  | 112 ----------------
 doc/liblzma-intro.txt    | 194 ----------------------------
 doc/liblzma-security.txt | 219 --------------------------------
 doc/lzma-intro.txt       | 107 ----------------
 5 files changed, 956 deletions(-)

commit 0255401e57c96af87c6b159eca28974e79430a82
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-05-01 11:21:46 +0300

    Added documentation about the legacy .lzma file format.

 doc/lzma-file-format.txt | 166 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 166 insertions(+)

commit 1496ff437c46f38303e0e94c511ca604b3a11f85
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-05-01 11:20:23 +0300

    Renamed the file format specification to xz-file-format.txt
    which is the filename used on the WWW.

 doc/file-format.txt    | 1127 ------------------------------------------------
 doc/xz-file-format.txt | 1127 ++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 1127 insertions(+), 1127 deletions(-)

commit 21c6b94373d239d7e86bd480fcd558e30391712f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-04-28 23:08:32 +0300

    Fixed a crash in liblzma.
    
    liblzma tries to avoid useless free()/malloc() pairs in
    initialization when multiple files are handled using the
    same lzma_stream. This didn't work with filter chains
    due to comparison of wrong pointers in lzma_next_coder_init(),
    making liblzma think that no memory reallocation is needed
    even when it actually is.
    
    Easy way to trigger this bug is to decompress two files with
    a single xz command. The first file should have e.g. x86+LZMA2
    as the filter chain, and the second file just LZMA2.

 src/liblzma/common/alone_decoder.c  | 2 +-
 src/liblzma/common/alone_encoder.c  | 4 ++--
 src/liblzma/common/auto_decoder.c   | 2 +-
 src/liblzma/common/block_decoder.c  | 2 +-
 src/liblzma/common/block_encoder.c  | 2 +-
 src/liblzma/common/common.h         | 4 ++--
 src/liblzma/common/easy_encoder.c   | 2 +-
 src/liblzma/common/index_decoder.c  | 2 +-
 src/liblzma/common/index_encoder.c  | 2 +-
 src/liblzma/common/stream_decoder.c | 2 +-
 src/liblzma/common/stream_encoder.c | 2 +-
 11 files changed, 13 insertions(+), 13 deletions(-)

commit e518d167aa5958e469982f4fb3a24b9b6a2b5d1c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-04-15 14:13:38 +0300

    Fix uint32_t -> size_t in ARM and ARM-Thumb filters.
    
    On 64-bit system it would have gone into infinite
    loop if a single input buffer was over 4 GiB (unlikely).

 src/liblzma/simple/arm.c      | 2 +-
 src/liblzma/simple/armthumb.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 31decdce041581e57c0d8a407d4795b114ef27ca
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-04-14 11:48:46 +0300

    Minor fixes to test files' README.

 tests/files/README | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

commit 4787d654434891c7df5b43959b0d2873718f06e0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-04-13 16:36:41 +0300

    Updated history.txt.

 doc/history.txt | 123 ++++++++++++++++++++++++++++++--------------------------
 1 file changed, 66 insertions(+), 57 deletions(-)

commit 2f0bc9cd40f709152a0177c8e585c0757e9af9c9
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-04-13 14:49:48 +0300

    Quick & dirty update to support xz in diff/grep/more scripts.

 src/scripts/Makefile.am |  38 +++++++++------
 src/scripts/lzdiff      |  67 --------------------------
 src/scripts/lzdiff.1    |  51 --------------------
 src/scripts/lzgrep      | 123 ------------------------------------------------
 src/scripts/lzgrep.1    |  61 ------------------------
 src/scripts/lzmore      |  74 -----------------------------
 src/scripts/lzmore.1    |  55 ----------------------
 src/scripts/xzdiff      |  67 ++++++++++++++++++++++++++
 src/scripts/xzdiff.1    |  58 +++++++++++++++++++++++
 src/scripts/xzgrep      | 123 ++++++++++++++++++++++++++++++++++++++++++++++++
 src/scripts/xzgrep.1    |  77 ++++++++++++++++++++++++++++++
 src/scripts/xzmore      |  74 +++++++++++++++++++++++++++++
 src/scripts/xzmore.1    |  66 ++++++++++++++++++++++++++
 13 files changed, 489 insertions(+), 445 deletions(-)

commit 02ddf09bc3079b3e17297729b9e43f14d407b8fc
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-04-13 11:27:40 +0300

    Put the interesting parts of XZ Utils into the public domain.
    Some minor documentation cleanups were made at the same time.

 COPYING                                        | 67 ++++++++++++++++++++------
 ChangeLog                                      |  2 +-
 Doxyfile.in                                    |  8 +--
 Makefile.am                                    | 13 ++---
 autogen.sh                                     |  9 ++++
 configure.ac                                   | 13 ++---
 debug/Makefile.am                              | 13 ++---
 debug/crc32.c                                  | 13 ++---
 debug/full_flush.c                             | 13 ++---
 debug/hex2bin.c                                |  7 ++-
 debug/known_sizes.c                            | 13 ++---
 debug/memusage.c                               | 13 ++---
 debug/repeat.c                                 | 13 ++---
 debug/sync_flush.c                             | 13 ++---
 doc/faq.txt                                    | 38 ++-------------
 lib/Makefile.am                                | 18 +++----
 src/Makefile.am                                | 13 ++---
 src/common/bswap.h                             |  7 ++-
 src/common/cpucores.h                          |  7 ++-
 src/common/integer.h                           |  7 ++-
 src/common/mythread.h                          |  4 +-
 src/common/open_stdxxx.h                       |  7 ++-
 src/common/physmem.h                           |  7 ++-
 src/common/sysdefs.h                           | 13 ++---
 src/liblzma/Makefile.am                        | 13 ++---
 src/liblzma/api/Makefile.am                    | 13 ++---
 src/liblzma/api/lzma.h                         | 38 +++++++++------
 src/liblzma/api/lzma/base.h                    | 20 +++-----
 src/liblzma/api/lzma/bcj.h                     | 18 +++----
 src/liblzma/api/lzma/block.h                   | 18 +++----
 src/liblzma/api/lzma/check.h                   | 18 +++----
 src/liblzma/api/lzma/container.h               | 18 +++----
 src/liblzma/api/lzma/delta.h                   | 18 +++----
 src/liblzma/api/lzma/filter.h                  | 18 +++----
 src/liblzma/api/lzma/index.h                   | 18 +++----
 src/liblzma/api/lzma/index_hash.h              | 22 +++------
 src/liblzma/api/lzma/lzma.h                    | 18 +++----
 src/liblzma/api/lzma/stream_flags.h            | 18 +++----
 src/liblzma/api/lzma/subblock.h                | 18 +++----
 src/liblzma/api/lzma/version.h                 | 18 +++----
 src/liblzma/api/lzma/vli.h                     | 46 ++++++++----------
 src/liblzma/check/Makefile.am                  |  8 ++-
 src/liblzma/check/check.c                      |  7 ++-
 src/liblzma/check/check.h                      |  7 ++-
 src/liblzma/check/crc32_fast.c                 | 30 +++++-------
 src/liblzma/check/crc32_small.c                |  7 ++-
 src/liblzma/check/crc32_table.c                |  7 ++-
 src/liblzma/check/crc32_tablegen.c             |  7 ++-
 src/liblzma/check/crc32_x86.S                  | 21 +++++---
 src/liblzma/check/crc64_fast.c                 | 20 +++-----
 src/liblzma/check/crc64_small.c                |  7 ++-
 src/liblzma/check/crc64_table.c                |  7 ++-
 src/liblzma/check/crc64_tablegen.c             |  7 ++-
 src/liblzma/check/crc64_x86.S                  | 14 ++++--
 src/liblzma/check/crc_macros.h                 |  9 ++--
 src/liblzma/check/sha256.c                     | 23 +++++----
 src/liblzma/common/Makefile.am                 | 13 ++---
 src/liblzma/common/alone_decoder.c             | 13 ++---
 src/liblzma/common/alone_decoder.h             | 13 ++---
 src/liblzma/common/alone_encoder.c             | 13 ++---
 src/liblzma/common/auto_decoder.c              | 13 ++---
 src/liblzma/common/block_buffer_decoder.c      | 13 ++---
 src/liblzma/common/block_buffer_encoder.c      | 13 ++---
 src/liblzma/common/block_decoder.c             | 13 ++---
 src/liblzma/common/block_decoder.h             | 13 ++---
 src/liblzma/common/block_encoder.c             | 13 ++---
 src/liblzma/common/block_encoder.h             | 13 ++---
 src/liblzma/common/block_header_decoder.c      | 13 ++---
 src/liblzma/common/block_header_encoder.c      | 13 ++---
 src/liblzma/common/block_util.c                | 13 ++---
 src/liblzma/common/bsr.h                       |  7 ++-
 src/liblzma/common/chunk_size.c                | 13 ++---
 src/liblzma/common/common.c                    | 13 ++---
 src/liblzma/common/common.h                    | 13 ++---
 src/liblzma/common/easy_buffer_encoder.c       | 13 ++---
 src/liblzma/common/easy_decoder_memusage.c     | 13 ++---
 src/liblzma/common/easy_encoder.c              | 13 ++---
 src/liblzma/common/easy_encoder_memusage.c     | 13 ++---
 src/liblzma/common/easy_preset.c               | 13 ++---
 src/liblzma/common/easy_preset.h               | 13 ++---
 src/liblzma/common/filter_buffer_decoder.c     | 13 ++---
 src/liblzma/common/filter_buffer_encoder.c     | 13 ++---
 src/liblzma/common/filter_common.c             | 13 ++---
 src/liblzma/common/filter_common.h             | 13 ++---
 src/liblzma/common/filter_decoder.c            | 13 ++---
 src/liblzma/common/filter_decoder.h            | 13 ++---
 src/liblzma/common/filter_encoder.c            | 13 ++---
 src/liblzma/common/filter_encoder.h            | 13 ++---
 src/liblzma/common/filter_flags_decoder.c      | 13 ++---
 src/liblzma/common/filter_flags_encoder.c      | 13 ++---
 src/liblzma/common/index.c                     | 13 ++---
 src/liblzma/common/index.h                     | 13 ++---
 src/liblzma/common/index_decoder.c             | 13 ++---
 src/liblzma/common/index_encoder.c             | 13 ++---
 src/liblzma/common/index_encoder.h             | 13 ++---
 src/liblzma/common/index_hash.c                | 13 ++---
 src/liblzma/common/stream_buffer_decoder.c     | 13 ++---
 src/liblzma/common/stream_buffer_encoder.c     | 13 ++---
 src/liblzma/common/stream_decoder.c            | 13 ++---
 src/liblzma/common/stream_decoder.h            | 13 ++---
 src/liblzma/common/stream_encoder.c            | 13 ++---
 src/liblzma/common/stream_encoder.h            | 13 ++---
 src/liblzma/common/stream_flags_common.c       | 13 ++---
 src/liblzma/common/stream_flags_common.h       | 13 ++---
 src/liblzma/common/stream_flags_decoder.c      | 13 ++---
 src/liblzma/common/stream_flags_encoder.c      | 13 ++---
 src/liblzma/common/vli_decoder.c               | 13 ++---
 src/liblzma/common/vli_encoder.c               | 13 ++---
 src/liblzma/common/vli_size.c                  | 13 ++---
 src/liblzma/delta/Makefile.am                  | 13 ++---
 src/liblzma/delta/delta_common.c               | 13 ++---
 src/liblzma/delta/delta_common.h               | 13 ++---
 src/liblzma/delta/delta_decoder.c              | 13 ++---
 src/liblzma/delta/delta_decoder.h              | 13 ++---
 src/liblzma/delta/delta_encoder.c              | 13 ++---
 src/liblzma/delta/delta_encoder.h              | 13 ++---
 src/liblzma/delta/delta_private.h              | 13 ++---
 src/liblzma/lz/Makefile.am                     | 13 ++---
 src/liblzma/lz/lz_decoder.c                    | 17 ++-----
 src/liblzma/lz/lz_decoder.h                    | 17 ++-----
 src/liblzma/lz/lz_encoder.c                    | 17 ++-----
 src/liblzma/lz/lz_encoder.h                    | 17 ++-----
 src/liblzma/lz/lz_encoder_hash.h               | 13 ++---
 src/liblzma/lz/lz_encoder_mf.c                 | 17 ++-----
 src/liblzma/lzma/Makefile.am                   | 13 ++---
 src/liblzma/lzma/fastpos.h                     | 17 ++-----
 src/liblzma/lzma/fastpos_tablegen.c            | 17 ++-----
 src/liblzma/lzma/lzma2_decoder.c               | 17 ++-----
 src/liblzma/lzma/lzma2_decoder.h               | 17 ++-----
 src/liblzma/lzma/lzma2_encoder.c               | 17 ++-----
 src/liblzma/lzma/lzma2_encoder.h               | 17 ++-----
 src/liblzma/lzma/lzma_common.h                 | 17 ++-----
 src/liblzma/lzma/lzma_decoder.c                | 17 ++-----
 src/liblzma/lzma/lzma_decoder.h                | 17 ++-----
 src/liblzma/lzma/lzma_encoder.c                | 17 ++-----
 src/liblzma/lzma/lzma_encoder.h                | 17 ++-----
 src/liblzma/lzma/lzma_encoder_optimum_fast.c   | 13 ++---
 src/liblzma/lzma/lzma_encoder_optimum_normal.c | 13 ++---
 src/liblzma/lzma/lzma_encoder_presets.c        | 13 ++---
 src/liblzma/lzma/lzma_encoder_private.h        | 17 ++-----
 src/liblzma/rangecoder/Makefile.am             | 13 ++---
 src/liblzma/rangecoder/price.h                 | 13 ++---
 src/liblzma/rangecoder/price_tablegen.c        | 16 ++----
 src/liblzma/rangecoder/range_common.h          | 17 ++-----
 src/liblzma/rangecoder/range_decoder.h         | 17 ++-----
 src/liblzma/rangecoder/range_encoder.h         | 17 ++-----
 src/liblzma/simple/Makefile.am                 | 13 ++---
 src/liblzma/simple/arm.c                       | 17 ++-----
 src/liblzma/simple/armthumb.c                  | 17 ++-----
 src/liblzma/simple/ia64.c                      | 17 ++-----
 src/liblzma/simple/powerpc.c                   | 17 ++-----
 src/liblzma/simple/simple_coder.c              | 13 ++---
 src/liblzma/simple/simple_coder.h              | 14 ++----
 src/liblzma/simple/simple_decoder.c            | 13 ++---
 src/liblzma/simple/simple_decoder.h            | 13 ++---
 src/liblzma/simple/simple_encoder.c            | 13 ++---
 src/liblzma/simple/simple_encoder.h            | 13 ++---
 src/liblzma/simple/simple_private.h            | 13 ++---
 src/liblzma/simple/sparc.c                     | 17 ++-----
 src/liblzma/simple/x86.c                       | 17 ++-----
 src/liblzma/subblock/Makefile.am               | 13 ++---
 src/liblzma/subblock/subblock_decoder.c        | 13 ++---
 src/liblzma/subblock/subblock_decoder.h        | 13 ++---
 src/liblzma/subblock/subblock_decoder_helper.c | 13 ++---
 src/liblzma/subblock/subblock_decoder_helper.h | 13 ++---
 src/liblzma/subblock/subblock_encoder.c        | 13 ++---
 src/liblzma/subblock/subblock_encoder.h        | 13 ++---
 src/scripts/Makefile.am                        |  7 +++
 src/xz/Makefile.am                             | 13 ++---
 src/xz/args.c                                  | 13 ++---
 src/xz/args.h                                  | 13 ++---
 src/xz/hardware.c                              | 13 ++---
 src/xz/hardware.h                              | 13 ++---
 src/xz/io.c                                    | 13 ++---
 src/xz/io.h                                    | 13 ++---
 src/xz/list.c                                  | 13 ++---
 src/xz/main.c                                  | 13 ++---
 src/xz/main.h                                  | 13 ++---
 src/xz/message.c                               | 13 ++---
 src/xz/message.h                               | 13 ++---
 src/xz/options.c                               | 13 ++---
 src/xz/options.h                               | 13 ++---
 src/xz/private.h                               | 13 ++---
 src/xz/process.c                               | 13 ++---
 src/xz/process.h                               | 13 ++---
 src/xz/signals.c                               | 13 ++---
 src/xz/signals.h                               | 13 ++---
 src/xz/suffix.c                                | 13 ++---
 src/xz/suffix.h                                | 13 ++---
 src/xz/util.c                                  | 13 ++---
 src/xz/util.h                                  | 13 ++---
 src/xzdec/Makefile.am                          | 13 ++---
 src/xzdec/xzdec.c                              | 13 ++---
 tests/Makefile.am                              | 13 ++---
 tests/bcj_test.c                               |  7 ++-
 tests/create_compress_files.c                  | 13 ++---
 tests/test_block.c                             | 13 ++---
 tests/test_block_header.c                      | 13 ++---
 tests/test_check.c                             | 13 ++---
 tests/test_compress.sh                         | 13 ++---
 tests/test_files.sh                            | 13 ++---
 tests/test_filter_flags.c                      | 13 ++---
 tests/test_index.c                             | 13 ++---
 tests/test_stream_flags.c                      | 13 ++---
 tests/tests.h                                  | 13 ++---
 windows/common.rc                              |  2 +-
 206 files changed, 868 insertions(+), 2023 deletions(-)

commit e79c42d854657ae7f75613bd80c1a35ff7c525cb
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-04-10 11:17:02 +0300

    Fix off-by-one in LZ decoder.
    
    Fortunately, this bug had no security risk other than accepting
    some corrupt files as valid.

 src/liblzma/lz/lz_decoder.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 94eb9ad46f1fded6d8369cf3d38bb9754c1375af
Author: Pavel Roskin <proski@gnu.org>
Date:   2009-03-31 12:15:01 -0400

    Fix minor typos in README

 README | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 9bab5336ebd765ec4e12252f416eefdf04eba750
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-03-31 21:52:51 +0300

    Add a note and work-around instructions to README about
    problems detecting a C99 compiler when some standard
    headers are missing.

 README | 11 +++++++++++
 1 file changed, 11 insertions(+)

commit a0497ff7a06f9350349264fe9b52dfefc6d53ead
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-03-18 16:54:38 +0200

    Updated THANKS.

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

commit 390e69887fc5e0a108eb41203bed9acd100a3d76
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-03-18 16:51:41 +0200

    Fix wrong macro names in lc_cpucores.m4 and cpucores.h.
    Thanks to Bert Wesarg.

 m4/lc_cpucores.m4     | 4 ++--
 src/common/cpucores.h | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

commit 0df9299e2478c2a0c62c05b1ae14a85a353e20d6
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-03-01 09:03:08 +0200

    Test for Linux-specific sysinfo() only on Linux systems.
    Some other systems have sysinfo() with different semantics.

 m4/lc_physmem.m4 | 28 +++++++++++++++++++---------
 1 file changed, 19 insertions(+), 9 deletions(-)

commit cf751edfde3ad6e088dc18e0522d31ae38405933
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-03-01 09:00:06 +0200

    Added AC_CONFIG_MACRO_DIR to configure.ac.

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

commit 63df14c57dee7c461717784287056688482a7eb9
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-03-01 08:58:41 +0200

    Fix the Autoconf test for getopt_long replacement.
    It was broken by e114502b2bc371e4a45449832cb69be036360722.

 m4/getopt.m4 | 4 ++++
 1 file changed, 4 insertions(+)

commit fd6a380f4eda4f00be5f2aa8d222992cd74a714f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-22 19:07:54 +0200

    Add a rough explanation of --extreme to output of --help.

 src/xz/message.c | 4 ++++
 1 file changed, 4 insertions(+)

commit 68bf7ac2984d3627369a240ef0491934d53f7899
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-22 18:52:49 +0200

    Fixes to progress message handling in xz:
    
      - Don't use Windows-specific code on Windows. The old code
        required at least Windows 2000. Now it should work on
        Windows 98 and later, and maybe on Windows 95 too.
    
      - Use less precision when showing estimated remaining time.
    
      - Fix some small design issues.

 src/xz/message.c | 483 +++++++++++++++++++++++++++++++++++--------------------
 src/xz/message.h |  28 ++--
 src/xz/process.c |  53 +++---
 3 files changed, 351 insertions(+), 213 deletions(-)

commit 47c2e21f82242f50f18713a27d644c2c94ab3fea
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-18 13:00:10 +0200

    Added files missing from the previous commit.

 src/liblzma/api/lzma/container.h | 33 +++++++++++++++++++++++++++++++++
 src/liblzma/common/Makefile.am   |  7 ++++++-
 2 files changed, 39 insertions(+), 1 deletion(-)

commit 489a3dbaa0465f04400804e956a1cfbbee3654a2
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-17 10:43:00 +0200

    Added lzma_easy_buffer_encode(). Splitted easy.c into small
    pieces to avoid unneeded dependencies making statically
    linked applications bigger than needed.

 dos/Makefile                               |   6 +-
 src/liblzma/common/easy.c                  | 128 -----------------------------
 src/liblzma/common/easy_buffer_encoder.c   |  34 ++++++++
 src/liblzma/common/easy_decoder_memusage.c |  31 +++++++
 src/liblzma/common/easy_encoder.c          |  87 ++++++++++++++++++++
 src/liblzma/common/easy_encoder_memusage.c |  31 +++++++
 src/liblzma/common/easy_preset.c           |  34 ++++++++
 src/liblzma/common/easy_preset.h           |  39 +++++++++
 windows/Makefile                           |   6 +-
 9 files changed, 266 insertions(+), 130 deletions(-)

commit 7494816ab08d82f4d6409788825930c4e43cfd0d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-15 15:48:45 +0200

    Make physmem.h work on old Windows versions.
    Thanks to Hongbo Ni for the original patch.

 src/common/physmem.h | 31 +++++++++++++++++++++++++++----
 1 file changed, 27 insertions(+), 4 deletions(-)

commit 11ae4ae35fd70182c713f2d914b7cb1143bc76f0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-14 20:44:52 +0200

    Fix microsecond vs. nanosecond confusion in my_time().

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

commit 3084d662d2646ab7eb58daf0dc32cf3f9a74eec7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-14 00:45:29 +0200

    Cleanups to the code that detects the amount of RAM and
    the number of CPU cores. Added support for using sysinfo()
    on Linux systems whose libc lacks appropriate sysconf()
    support (at least dietlibc). The Autoconf macros were
    split into separate files, and CPU core count detection
    was moved from hardware.c to cpucores.h. The core count
    isn't used for anything real for now, so a problematic
    part in process.c was commented out.

 configure.ac          | 89 ++-------------------------------------------------
 m4/lc_cpucores.m4     | 57 +++++++++++++++++++++++++++++++++
 m4/lc_physmem.m4      | 74 ++++++++++++++++++++++++++++++++++++++++++
 src/common/cpucores.h | 52 ++++++++++++++++++++++++++++++
 src/common/physmem.h  | 21 +++++++-----
 src/xz/args.c         |  4 +--
 src/xz/hardware.c     | 50 +++++++++++++----------------
 src/xz/hardware.h     | 11 +++++--
 src/xz/message.c      |  5 +--
 src/xz/process.c      |  2 ++
 10 files changed, 235 insertions(+), 130 deletions(-)

commit 9c62371eab2706c46b1072f5935e28cb4cd9dca8
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-13 18:23:50 +0200

    Initial port to DOS using DJGPP.

 dos/Makefile | 261 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 dos/README   | 113 ++++++++++++++++++++++++++
 dos/config.h | 150 ++++++++++++++++++++++++++++++++++
 3 files changed, 524 insertions(+)

commit 0dae8b7751d09e9c5a482d5519daaee4800ce203
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-13 18:02:05 +0200

    Windows port: Take advantage of the version number macros.
    Now the version number is not duplicated in the
    Windows-specific files anymore.

 windows/Makefile  |  2 +-
 windows/common.rc | 16 ++++++++--------
 windows/config.h  | 15 ---------------
 3 files changed, 9 insertions(+), 24 deletions(-)

commit fdbc0cfa71f7d660855098a609175ba384259529
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-13 18:00:03 +0200

    Changed how the version number is specified in various places.
    Now configure.ac will get the version number directly from
    src/liblzma/api/lzma/version.h. The intent is to reduce the
    number of places where the version number is duplicated. In
    future, support for displaying Git commit ID may be added too.

 configure.ac                   |  3 +-
 src/liblzma/api/lzma/version.h | 70 ++++++++++++++++++++++++++++++++++++++++--
 src/liblzma/common/common.c    |  2 +-
 src/xz/message.c               |  2 +-
 src/xzdec/xzdec.c              |  2 +-
 version.sh                     | 23 ++++++++++++++
 6 files changed, 95 insertions(+), 7 deletions(-)

commit 1d924e584b146136989f48c13fff2632896efb3d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-13 17:30:30 +0200

    Fix handling of integrity check type in the xz command line tool.

 src/xz/args.c    | 9 ++++++++-
 src/xz/process.c | 4 ++++
 2 files changed, 12 insertions(+), 1 deletion(-)

commit 96c46df7deb231ea68a03d8d1da9de4c774e36d8
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-13 17:29:02 +0200

    Improve support for DOS-like systems.
    Here DOS-like means DOS, Windows, and OS/2.

 src/common/physmem.h          | 12 ++++++++++++
 src/common/sysdefs.h          |  4 ++++
 src/liblzma/check/crc32_x86.S |  6 +++---
 src/liblzma/check/crc64_x86.S |  6 +++---
 src/xz/args.c                 | 13 +++++--------
 src/xz/io.c                   | 39 +++++++++++++++++++++++++--------------
 src/xz/main.c                 | 23 +++++++++++++++++++++++
 src/xz/message.c              |  3 +++
 src/xz/suffix.c               |  5 +++++
 src/xzdec/xzdec.c             |  5 +++--
 10 files changed, 86 insertions(+), 30 deletions(-)

commit b6a30ee8c2de60ecd722cd05223e4ba72f822e33
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-11 20:02:32 +0200

    Remove dead directories from .gitignore.

 .gitignore | 2 --
 1 file changed, 2 deletions(-)

commit 1ec5b0027911d94cb6f98892cbc690f818d8a861
Author: Jim Meyering <jim@meyering.net>
Date:   2009-02-11 14:45:14 +0100

    .gitignore vs. Makefiles
    
    How about this for those of us who do srcdir builds?

 .gitignore | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

commit 154f5aec2de201c674841de4fcc9804c2a87af07
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-10 21:48:35 +0200

    Removed Makefile from .gitignore since not all Makefiles
    in the repository are generated by Autotools. People
    should do test builds in a separate build directory anyway.

 .gitignore | 1 -
 1 file changed, 1 deletion(-)

commit e605c2663691b0a4c307786aa368d124ea081daa
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-10 21:48:05 +0200

    Added resource files for the Windows build.

 windows/Makefile   | 37 ++++++++++++++++++++++---------------
 windows/common.rc  | 46 ++++++++++++++++++++++++++++++++++++++++++++++
 windows/liblzma.rc |  5 +++++
 windows/lzmadec.rc |  5 +++++
 windows/xz.rc      |  5 +++++
 windows/xzdec.rc   |  5 +++++
 6 files changed, 88 insertions(+), 15 deletions(-)

commit a3bbbe05d32b1f7ea9eb98805df4dda2e811b476
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-09 14:54:31 +0200

    Let the user specify custom CFLAGS on the make command
    line. Previously custom CFLAGS worked only when they were
    passed to configure.

 configure.ac                  | 58 ++++++++++++++++++++++---------------------
 src/liblzma/check/Makefile.am |  2 +-
 2 files changed, 31 insertions(+), 29 deletions(-)

commit 53f7598998b1860a69c51243b5d2e34623c6bf60
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-08 21:35:11 +0200

    Fix aliasing issue in physmem.h.

 src/common/physmem.h | 19 ++++++++++---------
 1 file changed, 10 insertions(+), 9 deletions(-)

commit 0e27028d74c5c7a8e036ae2a9b8cecb0ac79d3a6
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-08 18:24:50 +0200

    Add a separate internal function to initialize the CRC32
    table, which is used also by LZ encoder. This was needed
    because calling lzma_crc32() and ignoring the result is
    a no-op due to lzma_attr_pure.

 src/liblzma/check/check.h       |  1 +
 src/liblzma/check/crc32_small.c | 10 +++++++++-
 src/liblzma/lz/lz_encoder.c     |  4 ++--
 3 files changed, 12 insertions(+), 3 deletions(-)

commit ae1ad9af54210c9a2be336b1316532da5071516c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-08 18:17:05 +0200

    Make "xz --force" to write to terminal as the error
    message suggests.

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

commit 79e25eded48d2fe33f31441ab7a034f902e335f8
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-08 10:37:50 +0200

    Support both slash and backslash as path component
    separator on Windows when parsing argv[0].

 src/xz/args.c | 9 +++++++++
 1 file changed, 9 insertions(+)

commit bc7c7109cc4410055a888c1c70cbd1c9445c4361
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-07 23:18:13 +0200

    Omit the wrong and (even if corrected) nowadays useless rm
    from autogen.sh.

 autogen.sh | 28 ----------------------------
 1 file changed, 28 deletions(-)

commit edfc2031e56f8a2ccda063f02936b3a848d88723
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-07 21:41:52 +0200

    Updated THANKS.

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

commit 880c3309386aac58fc4f3d7ca99bd31bcb1526a3
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-07 21:17:07 +0200

    Make it easy to choose if command line tools should be
    linked statically or dynamically against liblzma. The
    default is still to use static liblzma, but it can now
    be changed by passing --enable-dynamic to configure.
    Thanks to Mike Frysinger for the original patch.
    
    Fixed a few minor bugs in configure.ac.

 configure.ac          | 39 +++++++++++++++++++++++++++++++++++++++
 src/xz/Makefile.am    |  8 +++-----
 src/xzdec/Makefile.am |  5 +++--
 3 files changed, 45 insertions(+), 7 deletions(-)

commit 3f86532407e4ace3debb62be16035e009b56ca36
Author: Mike Frysinger <vapier@gentoo.org>
Date:   2009-02-06 23:38:39 -0500

    add gitignore files
    
    Signed-off-by: Mike Frysinger <vapier@gentoo.org>

 .gitignore    | 32 ++++++++++++++++++++++++++++++++
 m4/.gitignore | 35 +++++++++++++++++++++++++++++++++++
 po/.gitignore | 12 ++++++++++++
 3 files changed, 79 insertions(+)

commit bd7ca1dad5c146b6217799ffaa230c32d207a3e5
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-07 17:07:52 +0200

    Assume 32 MiB of RAM on unsupported operating systems like
    the comment in hardware.c already said.

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

commit d0ab8c1c73ae712adb0d26fbb9da762d99a63618
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-07 16:26:58 +0200

    MinGW support: Don't build fastpos_tablegen.c as part of
    liblzma. Build both static and dynamic liblzma, and also
    static and dynamic versions of the command line tools.

 windows/Makefile | 92 ++++++++++++++++++++++++++++++++++++++++++--------------
 windows/README   | 10 ------
 2 files changed, 69 insertions(+), 33 deletions(-)

commit bfd91198e44a52bd9bfe3cd6dcae5edab7c6eb45
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-07 15:55:47 +0200

    Support LZMA_API_STATIC in assembler files to
    avoid __declspec(dllexport) equivalent.

 src/liblzma/check/crc32_x86.S | 4 ++++
 src/liblzma/check/crc64_x86.S | 2 ++
 2 files changed, 6 insertions(+)

commit 3306cf3883492720b3c34baa02f4eb4227d91c73
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-07 11:11:50 +0200

    Introduced LZMA_API_STATIC macro, which the applications
    need to #define when linking against static liblzma on
    platforms like Windows. Most developers don't need to
    care about LZMA_API_STATIC at all.

 src/liblzma/api/lzma.h      | 31 ++++++++++++++++++++++++-------
 src/liblzma/common/common.h |  2 +-
 2 files changed, 25 insertions(+), 8 deletions(-)

commit b719e63c5f4c91d2d5e2ea585d4c055ec3767d0b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-06 16:55:45 +0200

    Another grammar fix

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

commit fe5434f940f75fec3611cf9d9edf78c4da8ac760
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-06 12:30:23 +0200

    Grammar fix in README.

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

commit 3dfa58a9eedf5a0e566452b078801c9cbcf7a245
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-06 10:06:32 +0200

    Some MSYS installations (e.g. MsysGit) don't include
    install.exe, so don't rely on it.

 windows/Makefile | 12 +++++++-----
 windows/README   | 11 ++++++-----
 2 files changed, 13 insertions(+), 10 deletions(-)

commit 975d8fd72a5148d46b2e1745f7a211cf1dfd9d31
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-06 09:13:15 +0200

    Recreated the BCJ test files for x86 and SPARC. The old files
    were linked with crt*.o, which are copyrighted, and thus the
    old test files were not in the public domain as a whole. They
    are freely distributable though, but it is better to be careful
    and avoid including any copyrighted pieces in the test files.
    The new files are just compiled and assembled object files,
    and thus don't contain any copyrighted code.

 tests/bcj_test.c                  |   2 +-
 tests/compress_prepared_bcj_sparc | Bin 6804 -> 1240 bytes
 tests/compress_prepared_bcj_x86   | Bin 4649 -> 1388 bytes
 tests/files/good-1-sparc-lzma2.xz | Bin 2296 -> 612 bytes
 tests/files/good-1-x86-lzma2.xz   | Bin 1936 -> 716 bytes
 5 files changed, 1 insertion(+), 1 deletion(-)

commit 094b1b09a531f0d201ec81f2b07346a995fd80b9
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-05 21:21:27 +0200

    Add the "windows" directory to EXTRA_DIST.

 Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit e1c3412eec7acec7ca3b32c9c828f3147dc65b49
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-05 09:17:51 +0200

    Added initial experimental makefile for use with MinGW.

 windows/Makefile | 253 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 windows/README   | 164 ++++++++++++++++++++++++++++++++++++
 windows/config.h | 180 +++++++++++++++++++++++++++++++++++++++
 3 files changed, 597 insertions(+)

commit 75905a9afc0ee89954ede7d08af70d1148bf0fd9
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-05 09:12:57 +0200

    Various code cleanups the the xz command line tool.
    It now builds with MinGW.

 src/common/physmem.h |  13 ++++
 src/xz/Makefile.am   |   2 +
 src/xz/args.h        |   8 ---
 src/xz/hardware.h    |  10 +--
 src/xz/io.c          |  93 +++++++++++++++++++-------
 src/xz/io.h          |  12 ++--
 src/xz/main.c        | 132 ++-----------------------------------
 src/xz/main.h        |  22 -------
 src/xz/message.c     |  65 ++++++++++++++++---
 src/xz/message.h     |   6 --
 src/xz/options.h     |   8 ---
 src/xz/private.h     |  18 ++++--
 src/xz/process.h     |  10 +--
 src/xz/signals.c     | 180 +++++++++++++++++++++++++++++++++++++++++++++++++++
 src/xz/signals.h     |  51 +++++++++++++++
 src/xz/suffix.h      |   5 --
 src/xz/util.c        |   5 +-
 src/xz/util.h        |   5 --
 18 files changed, 399 insertions(+), 246 deletions(-)

commit d0c0b9e94e0af59d1d8f7f4829695d6efe19ccfe
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-03 12:15:17 +0200

    Another utime() fix.

 src/xz/io.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

commit ccf92a29e8c7234284f1568c1ec0fd7cb98356ca
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-03 10:41:11 +0200

    Fix wrong filename argument for utime() and utimes().
    This doesn't affect most systems, since most systems
    have better functions available.

 src/xz/io.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 99c1c2abfae2e87f3c17e929783e6d1bb7a3f302
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-02 21:19:01 +0200

    Updated the x86 assembler code:
      - Use call/ret pair to get instruction pointer for PIC.
      - Use PIC only if PIC or __PIC__ is #defined.
      - The code should work on MinGW and Darwin in addition
        to GNU/Linux and Solaris.

 configure.ac                  |  6 ----
 src/liblzma/check/crc32_x86.S | 84 ++++++++++++++++++++++++++++++++++++-------
 src/liblzma/check/crc64_x86.S | 82 ++++++++++++++++++++++++++++++++++++------
 3 files changed, 144 insertions(+), 28 deletions(-)

commit 22a0c6dd940b78cdac2f4a4b4b0e7cc0ac15021f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-02 20:14:03 +0200

    Modify LZMA_API macro so that it works on Windows with
    other compilers than MinGW. This may hurt readability
    of the API headers slightly, but I don't know any
    better way to do this.

 src/liblzma/api/lzma.h                     |  6 ++---
 src/liblzma/api/lzma/base.h                | 11 ++++----
 src/liblzma/api/lzma/block.h               | 22 ++++++++--------
 src/liblzma/api/lzma/check.h               | 10 ++++----
 src/liblzma/api/lzma/container.h           | 22 ++++++++--------
 src/liblzma/api/lzma/filter.h              | 28 ++++++++++-----------
 src/liblzma/api/lzma/index.h               | 40 +++++++++++++++---------------
 src/liblzma/api/lzma/index_hash.h          | 10 ++++----
 src/liblzma/api/lzma/lzma.h                |  6 ++---
 src/liblzma/api/lzma/stream_flags.h        | 10 ++++----
 src/liblzma/api/lzma/version.h             |  4 +--
 src/liblzma/api/lzma/vli.h                 |  6 ++---
 src/liblzma/check/check.c                  |  4 +--
 src/liblzma/check/crc32_fast.c             |  2 +-
 src/liblzma/check/crc32_small.c            |  2 +-
 src/liblzma/check/crc64_fast.c             |  2 +-
 src/liblzma/check/crc64_small.c            |  2 +-
 src/liblzma/common/alone_decoder.c         |  2 +-
 src/liblzma/common/alone_encoder.c         |  2 +-
 src/liblzma/common/auto_decoder.c          |  2 +-
 src/liblzma/common/block_buffer_decoder.c  |  2 +-
 src/liblzma/common/block_buffer_encoder.c  |  4 +--
 src/liblzma/common/block_decoder.c         |  2 +-
 src/liblzma/common/block_encoder.c         |  2 +-
 src/liblzma/common/block_header_decoder.c  |  2 +-
 src/liblzma/common/block_header_encoder.c  |  4 +--
 src/liblzma/common/block_util.c            |  6 ++---
 src/liblzma/common/chunk_size.c            |  2 +-
 src/liblzma/common/common.c                | 16 ++++++------
 src/liblzma/common/common.h                |  2 +-
 src/liblzma/common/easy.c                  |  6 ++---
 src/liblzma/common/filter_buffer_decoder.c |  2 +-
 src/liblzma/common/filter_buffer_encoder.c |  2 +-
 src/liblzma/common/filter_decoder.c        |  8 +++---
 src/liblzma/common/filter_encoder.c        | 12 ++++-----
 src/liblzma/common/filter_flags_decoder.c  |  2 +-
 src/liblzma/common/filter_flags_encoder.c  |  4 +--
 src/liblzma/common/index.c                 | 32 ++++++++++++------------
 src/liblzma/common/index_decoder.c         |  4 +--
 src/liblzma/common/index_encoder.c         |  4 +--
 src/liblzma/common/index_hash.c            | 10 ++++----
 src/liblzma/common/stream_buffer_decoder.c |  2 +-
 src/liblzma/common/stream_buffer_encoder.c |  4 +--
 src/liblzma/common/stream_decoder.c        |  2 +-
 src/liblzma/common/stream_encoder.c        |  2 +-
 src/liblzma/common/stream_flags_common.c   |  2 +-
 src/liblzma/common/stream_flags_decoder.c  |  4 +--
 src/liblzma/common/stream_flags_encoder.c  |  4 +--
 src/liblzma/common/vli_decoder.c           |  2 +-
 src/liblzma/common/vli_encoder.c           |  2 +-
 src/liblzma/common/vli_size.c              |  2 +-
 src/liblzma/lz/lz_encoder.c                |  2 +-
 src/liblzma/lzma/lzma_encoder.c            |  2 +-
 src/liblzma/lzma/lzma_encoder_presets.c    |  2 +-
 54 files changed, 177 insertions(+), 176 deletions(-)

commit 8dd7b6052e18621e2e6c62f40f762ee88bd3eb65
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-01 22:40:35 +0200

    Fix a bug in lzma_block_buffer_decode(), although this
    function should be rewritten anyway.

 src/liblzma/common/block_buffer_decoder.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 55fd41431e61fb8178858283d636b6781e33e847
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-01 22:39:07 +0200

    Added initial version of raw buffer-to-buffer coding
    functions, and cleaned up filter.h API header a little.
    May be very buggy, not tested yet.

 src/liblzma/api/lzma/filter.h              | 84 +++++++++++++++++++-------
 src/liblzma/common/Makefile.am             |  2 +
 src/liblzma/common/filter_buffer_decoder.c | 94 ++++++++++++++++++++++++++++++
 src/liblzma/common/filter_buffer_encoder.c | 61 +++++++++++++++++++
 4 files changed, 221 insertions(+), 20 deletions(-)

commit 3e54ecee5cad30a5ca361a88a99230407abc0699
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-01 00:11:20 +0200

    Fix missing newlines in xzdec.c.

 src/xzdec/xzdec.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit d64ca34f1b6f34e86adefc7f735b4eff8e6d4a35
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-02-01 00:10:07 +0200

    Use __cdecl also for function pointers in liblzma API when
    on Windows.

 src/liblzma/api/lzma.h      | 18 +++++++++++-------
 src/liblzma/api/lzma/base.h |  4 ++--
 src/liblzma/common/common.h | 18 +++++++-----------
 3 files changed, 20 insertions(+), 20 deletions(-)

commit 6a2eb54092fc625d59921a607ff68cd1a90aa898
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-31 11:01:48 +0200

    Add LZMA_API to liblzma API headers. It's useful at least
    on Windows. sysdefs.h no longer #includes lzma.h, so lzma.h
    has to be #included separately where needed.

 src/common/sysdefs.h                |  2 --
 src/liblzma/api/lzma.h              | 17 ++++++++++++++
 src/liblzma/api/lzma/base.h         | 10 ++++----
 src/liblzma/api/lzma/block.h        | 25 +++++++++++---------
 src/liblzma/api/lzma/check.h        | 12 ++++++----
 src/liblzma/api/lzma/container.h    | 23 +++++++++---------
 src/liblzma/api/lzma/filter.h       | 24 +++++++++----------
 src/liblzma/api/lzma/index.h        | 47 +++++++++++++++++++++----------------
 src/liblzma/api/lzma/index_hash.h   | 11 +++++----
 src/liblzma/api/lzma/lzma.h         |  8 ++++---
 src/liblzma/api/lzma/stream_flags.h | 10 ++++----
 src/liblzma/api/lzma/version.h      |  4 ++--
 src/liblzma/api/lzma/vli.h          | 10 ++++----
 src/liblzma/common/common.h         | 13 ++++++++--
 src/xz/private.h                    |  1 +
 src/xzdec/xzdec.c                   |  1 +
 tests/tests.h                       |  1 +
 17 files changed, 131 insertions(+), 88 deletions(-)

commit d9993fcb4dfc1f93abaf31ae23b3ef1f3123892b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-31 10:13:09 +0200

    Use _WIN32 instead of WIN32 in xzdec.c to test if compiling on Windows.

 src/xzdec/xzdec.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 2dbdc5befb33c3703e4609809101047c67caf343
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-31 10:02:52 +0200

    Fix two lines in lzma.h on which the # wasn't at the
    beginning of the line.

 src/liblzma/api/lzma.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 4ab760109106dc04f39dd81c97d50f528d1b51c1
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-31 09:55:05 +0200

    Add support for using liblzma headers in MSVC, which has no
    stdint.h or inttypes.h.

 src/liblzma/api/lzma.h | 70 +++++++++++++++++++++++++++++++++-----------------
 1 file changed, 46 insertions(+), 24 deletions(-)

commit b2172cf823d3be34cb0246cb4cb32d105e2a34c9
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-31 08:49:54 +0200

    Fix # -> ## in a macro in lzma.h.

 src/liblzma/api/lzma.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1aae8698746d3c87a93f8398cdde2de9ba1f7208
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-30 18:50:16 +0200

    Updated README.

 README | 30 ++++++++++++++++++++----------
 1 file changed, 20 insertions(+), 10 deletions(-)

commit f54bcf6f80d585236bc03ce49f7c73e1abaa17eb
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-30 00:29:58 +0200

    Remove dangling crc64_init.c.

 src/liblzma/check/crc64_init.c | 55 ------------------------------------------
 1 file changed, 55 deletions(-)

commit 982da7ed314398420c38bf154a8f759d5f18b480
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-28 17:16:38 +0200

    The .xz file format specification version 1.0.0 is now
    officially released. The format has been technically the same
    since 2008-11-19, but now that it is frozen, people can start
    using it without a fear that the format will break.

 doc/file-format.txt | 84 +++++++++++++++++++++++++++++++----------------------
 1 file changed, 49 insertions(+), 35 deletions(-)

commit c4683a660b4372156bdaf92f0cdc54a58f95ee6f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-28 08:45:59 +0200

    Updated THANKS.

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

commit 3241317093595db9f79104faafe93cb989c9f858
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-28 08:43:26 +0200

    Fix uninitialized variables in alone_decoder.c. This bug was
    triggered by the previous commit, since these variables were
    not used by anything before support for a preset dictionary.

 src/liblzma/common/alone_decoder.c | 2 ++
 1 file changed, 2 insertions(+)

commit f76e39cf930f888d460b443d18f977ebedea8b2a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-27 18:36:05 +0200

    Added initial support for preset dictionary for raw LZMA1
    and LZMA2. It is not supported by the .xz format or the xz
    command line tool yet.

 src/liblzma/lz/lz_decoder.c      | 35 +++++++++++++++++++++++++----------
 src/liblzma/lz/lz_decoder.h      |  9 ++++++++-
 src/liblzma/lz/lz_encoder.c      | 18 ++++++++++++++++--
 src/liblzma/lzma/lzma2_decoder.c |  9 ++++++---
 src/liblzma/lzma/lzma2_encoder.c | 12 +++++++-----
 src/liblzma/lzma/lzma_decoder.c  | 10 ++++++----
 src/liblzma/lzma/lzma_decoder.h  |  2 +-
 src/liblzma/lzma/lzma_encoder.c  |  9 ++++++++-
 8 files changed, 77 insertions(+), 27 deletions(-)

commit 449b8c832b26c3633f3bec60095e57d2d3ada1f3
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-26 20:09:17 +0200

    Regenerate the CRC tables without trailing blanks.

 src/liblzma/check/crc32_table_be.h | 1008 +++++++++++++++++------------------
 src/liblzma/check/crc32_table_le.h | 1008 +++++++++++++++++------------------
 src/liblzma/check/crc64_table_be.h | 1016 ++++++++++++++++++------------------
 src/liblzma/check/crc64_table_le.h | 1016 ++++++++++++++++++------------------
 4 files changed, 2024 insertions(+), 2024 deletions(-)

commit 850f7400428dc9c5fd08a2f35a5bd2c9e45aede2
Author: Jim Meyering <meyering@redhat.com>
Date:   2009-01-19 21:37:16 +0100

    remove trailing blanks from all but .xz files

 debug/known_sizes.c                | 2 +-
 extra/scanlzma/scanlzma.c          | 5 ++---
 src/liblzma/check/crc32_tablegen.c | 2 +-
 src/liblzma/check/crc64_tablegen.c | 2 +-
 src/scripts/lzdiff.1               | 4 ++--
 src/scripts/lzmore.1               | 6 +++---
 tests/test_compress.sh             | 4 ++--
 7 files changed, 12 insertions(+), 13 deletions(-)

commit 667481f1aad34e1ed15738e7913a9c7e256b4cf5
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-26 14:34:10 +0200

    Add lzma_block_buffer_decode().

 src/liblzma/api/lzma/block.h              | 41 +++++++++++++++
 src/liblzma/common/Makefile.am            |  1 +
 src/liblzma/common/block_buffer_decoder.c | 87 +++++++++++++++++++++++++++++++
 3 files changed, 129 insertions(+)

commit 5fb34d8324d3e7e0061df25d0086b64c8726b19d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-26 14:33:28 +0200

    Add more sanity checks to lzma_stream_buffer_decode().

 src/liblzma/common/stream_buffer_decoder.c | 7 +++++++
 1 file changed, 7 insertions(+)

commit c129748675a5daa8838df92bde32cc04f6ce61ba
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-26 14:33:13 +0200

    Avoid hardcoded constant in easy.c.

 src/liblzma/common/easy.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1859d22d75e072463db74c25bc3f5a7992e5fdf6
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-26 13:06:49 +0200

    Tiny bit better sanity check in block_util.c

 src/liblzma/common/block_util.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2c5fe958e4bbe9b147b10c255955dfe2827fb8e7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-25 01:35:56 +0200

    Fix a dumb bug in Block decoder, which made it return
    LZMA_DATA_ERROR with valid data. The bug was added in
    e114502b2bc371e4a45449832cb69be036360722.

 src/liblzma/common/block_decoder.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit c81f13ff29271de7293f8af3d81848b1dcae3d19
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-23 22:27:50 +0200

    Added lzma_stream_buffer_decode() and made minor cleanups.

 src/liblzma/api/lzma/block.h               |  3 +-
 src/liblzma/api/lzma/container.h           | 51 ++++++++++++++++-
 src/liblzma/common/Makefile.am             |  1 +
 src/liblzma/common/stream_buffer_decoder.c | 91 ++++++++++++++++++++++++++++++
 4 files changed, 144 insertions(+), 2 deletions(-)

commit 0b3318661ce749550b8531dfd469639a08930391
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-22 12:53:33 +0200

    Fix a comment.

 src/liblzma/common/common.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9ec80355a7212a0a2f8c89d98e51b1d8b4e34eec
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-20 16:37:27 +0200

    Add some single-call buffer-to-buffer coding functions.

 src/liblzma/api/lzma/block.h               |  57 ++++++
 src/liblzma/api/lzma/container.h           |  56 ++++++
 src/liblzma/api/lzma/index.h               |  70 ++++++-
 src/liblzma/common/Makefile.am             |   2 +
 src/liblzma/common/block_buffer_encoder.c  | 305 +++++++++++++++++++++++++++++
 src/liblzma/common/index_decoder.c         |  83 ++++++--
 src/liblzma/common/index_encoder.c         |  59 +++++-
 src/liblzma/common/stream_buffer_encoder.c | 138 +++++++++++++
 tests/test_index.c                         |  24 +++
 9 files changed, 768 insertions(+), 26 deletions(-)

commit d8b58d099340f8f4007b24b211ee41a7210c061c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-20 13:45:41 +0200

    Block encoder cleanups

 src/liblzma/common/block_encoder.c | 28 +++++++---------------------
 src/liblzma/common/block_encoder.h | 25 +++++++++++++++++++++++++
 2 files changed, 32 insertions(+), 21 deletions(-)

commit 0c09810cb3635cb575cb54e694d41523e7d0a335
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-20 10:35:15 +0200

    Use LZMA_PROG_ERROR in lzma_code() as documented in base.h.

 src/liblzma/common/common.c | 24 ++++++++----------------
 1 file changed, 8 insertions(+), 16 deletions(-)

commit 2f1a8e8eb898f6c036cde55d153ad348bfab3c00
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-19 22:53:18 +0200

    Fix handling of non-fatal errors in lzma_code().

 src/liblzma/common/common.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

commit 4810b6bc25087be872960b9dd1d11ff07735dc88
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-19 14:00:33 +0200

    Move some LZMA2 constants to lzma2_encoder.h so that they
    can be used outside lzma2_encoder.c.

 src/liblzma/lzma/lzma2_encoder.c | 13 -------------
 src/liblzma/lzma/lzma2_encoder.h | 14 ++++++++++++++
 src/liblzma/lzma/lzma_encoder.c  |  3 ++-
 3 files changed, 16 insertions(+), 14 deletions(-)

commit 00be5d2e09f9c7a6a8563465ad8b8042866817a4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-19 13:52:36 +0200

    Remove dead code.

 src/liblzma/lzma/lzma_encoder.h | 8 --------
 1 file changed, 8 deletions(-)

commit 128586213f77c9bd82b7e9a62927f6d0c3769d85
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-17 14:24:25 +0200

    Beta was supposed to be API stable but I had forgot to rename
    lzma_memlimit_encoder and lzma_memlimit_decoder to
    lzma_raw_encoder_memlimit and lzma_raw_decoder_memlimit. :-(
    Now it is fixed. Hopefully it doesn't cause too much trouble
    to those who already thought API is stable.

 src/liblzma/api/lzma/filter.h       | 4 ++--
 src/liblzma/common/easy.c           | 4 ++--
 src/liblzma/common/filter_common.c  | 2 +-
 src/liblzma/common/filter_common.h  | 2 +-
 src/liblzma/common/filter_decoder.c | 4 ++--
 src/liblzma/common/filter_encoder.c | 4 ++--
 src/liblzma/common/stream_decoder.c | 2 +-
 src/xz/process.c                    | 6 +++---
 8 files changed, 14 insertions(+), 14 deletions(-)

commit b056379490be5c584c264a967f0540041a163a1e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-15 14:29:22 +0200

    Updated THANKS.

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

commit dc8f3be06d54ef6e6cfb5134dd3d25edd08cef89
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-15 14:27:32 +0200

    Fixed a bug in 7z2lzma.bash to make it work with .7z files
    that use something else than 2^n as the dictionary size.
    Thanks to Dan Shechter for the bug report.

 extra/7z2lzma/7z2lzma.bash | 47 +++++++++++++++++++++++-----------------------
 1 file changed, 24 insertions(+), 23 deletions(-)

commit 8286a60b8f4bd5accfbc9d229d2204bac31994f2
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2009-01-07 18:41:15 +0200

    Use pthread_sigmask() instead of sigprocmask() when pthreads
    are enabled.

 src/common/mythread.h | 6 ++++++
 src/xz/main.c         | 4 ++--
 src/xz/private.h      | 1 +
 3 files changed, 9 insertions(+), 2 deletions(-)

commit 4fd43cb3a906f6da2943f69239ee984c4787c9a9
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-31 20:01:00 +0200

    Bumped version to 4.999.8beta right after the release
    of 4.999.7beta.

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

commit 061748f5932719643cda73383db715167d543c22
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-31 18:59:02 +0200

    Disable Subblock filter from test_compress.sh since it is
    disabled by default in configure.ac.

 tests/test_compress.sh | 22 +++++++++++++---------
 1 file changed, 13 insertions(+), 9 deletions(-)

commit 9c45658ddc8bd4a7819ef8547d3e7ccf73203e78
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-31 17:44:20 +0200

    Disable both Subblock encoder and decoder my default,
    since they are not finished and may have security issues too.

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

commit b59f1e98f50694cf6a8f1b342fd878feebdb2f88
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-31 17:42:50 +0200

    Update some files in debug directory.

 debug/full_flush.c | 2 --
 debug/memusage.c   | 2 --
 debug/sync_flush.c | 2 --
 3 files changed, 6 deletions(-)

commit d1d17a40d33a9682424ca37282813492f2cba6d0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-31 17:41:46 +0200

    Prepare for 4.999.7beta release.

 AUTHORS                        |  4 ++--
 README                         | 34 +++++++++++++++++-----------------
 configure.ac                   |  4 ++--
 src/liblzma/api/lzma/version.h |  2 +-
 4 files changed, 22 insertions(+), 22 deletions(-)

commit 88d3e6b0b18e24142b6d3b41dc1b84b00c49fef3
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-31 17:15:03 +0200

    Cleaned up some comments in the API headers.

 src/liblzma/api/lzma/check.h     | 23 +++++++++++------------
 src/liblzma/api/lzma/container.h |  2 +-
 src/liblzma/api/lzma/version.h   |  4 +++-
 3 files changed, 15 insertions(+), 14 deletions(-)

commit 322ecf93c961e45a1da8c4a794a7fdacefcd7f40
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-31 16:29:39 +0200

    Renamed lzma_options_simple to lzma_options_bcj in the API.
    The internal implementation is still using the name "simple".
    It may need some cleanups, so I look at it later.

 src/liblzma/api/Makefile.am         |  2 +-
 src/liblzma/api/lzma.h              |  2 +-
 src/liblzma/api/lzma/bcj.h          | 94 +++++++++++++++++++++++++++++++++++++
 src/liblzma/api/lzma/simple.h       | 94 -------------------------------------
 src/liblzma/simple/simple_coder.c   |  2 +-
 src/liblzma/simple/simple_decoder.c |  4 +-
 src/liblzma/simple/simple_encoder.c |  4 +-
 tests/test_filter_flags.c           |  8 ++--
 8 files changed, 105 insertions(+), 105 deletions(-)

commit 7eea8bec3abfed883efba66264a1452a1c04f6b0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-31 00:57:27 +0200

    Fixed missing quoting in configure.ac.

 configure.ac | 38 +++++++++++++++++++-------------------
 1 file changed, 19 insertions(+), 19 deletions(-)

commit 28e75f7086dbe9501d926c370375c69dfb1236ce
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-31 00:48:23 +0200

    Updated src/liblzma/Makefile.am to use liblzma.pc.in, which
    should have been in the previous commit.

 src/liblzma/Makefile.am | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 7ed9d943b31d3ee9c5fb2387e84a241ba33afe90
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-31 00:30:49 +0200

    Remove lzma_init() and other init functions from liblzma API.
    Half of developers were already forgetting to use these
    functions, which could have caused total breakage in some future
    liblzma version or even now if --enable-small was used. Now
    liblzma uses pthread_once() to do the initializations unless
    it has been built with --disable-threads which make these
    initializations thread-unsafe.
    
    When --enable-small isn't used, liblzma currently gets needlessly
    linked against libpthread (on systems that have it). While it is
    stupid for now, liblzma will need threads in future anyway, so
    this stupidity will be temporary only.
    
    When --enable-small is used, different code CRC32 and CRC64 is
    now used than without --enable-small. This made the resulting
    binary slightly smaller, but the main reason was to clean it up
    and to handle the lack of lzma_init_check().
    
    The pkg-config file lzma.pc was renamed to liblzma.pc. I'm not
    sure if it works correctly and portably for static linking
    (Libs.private includes -pthread or other operating system
    specific flags). Hopefully someone complains if it is bad.
    
    lzma_rc_prices[] is now included as a precomputed array even
    with --enable-small. It's just 128 bytes now that it uses uint8_t
    instead of uint32_t. Smaller array seemed to be at least as fast
    as the more bloated uint32_t array on x86; hopefully it's not bad
    on other architectures.

 configure.ac                              | 29 ++++++++--
 src/common/mythread.h                     | 34 ++++++++++++
 src/liblzma/api/Makefile.am               |  1 -
 src/liblzma/api/lzma.h                    |  1 -
 src/liblzma/api/lzma/init.h               | 85 -----------------------------
 src/liblzma/check/Makefile.am             | 29 ++++------
 src/liblzma/check/check.c                 | 10 ++--
 src/liblzma/check/check.h                 | 25 ++++-----
 src/liblzma/check/check_init.c            | 37 -------------
 src/liblzma/check/crc32.c                 | 88 -------------------------------
 src/liblzma/check/crc32_fast.c            | 88 +++++++++++++++++++++++++++++++
 src/liblzma/check/crc32_init.c            | 55 -------------------
 src/liblzma/check/crc32_small.c           | 54 +++++++++++++++++++
 src/liblzma/check/crc32_tablegen.c        | 55 ++++++++++++++++---
 src/liblzma/check/crc64.c                 | 75 --------------------------
 src/liblzma/check/crc64_fast.c            | 75 ++++++++++++++++++++++++++
 src/liblzma/check/crc64_small.c           | 54 +++++++++++++++++++
 src/liblzma/check/crc64_tablegen.c        | 55 ++++++++++++++++---
 src/liblzma/common/Makefile.am            |  3 --
 src/liblzma/common/common.h               |  1 +
 src/liblzma/common/init.c                 | 39 --------------
 src/liblzma/common/init_decoder.c         | 31 -----------
 src/liblzma/common/init_encoder.c         | 40 --------------
 src/liblzma/liblzma.pc.in                 | 12 +++++
 src/liblzma/lz/lz_encoder.c               |  6 +++
 src/liblzma/lzma.pc.in                    | 11 ----
 src/liblzma/rangecoder/Makefile.am        |  8 +--
 src/liblzma/rangecoder/price.h            | 16 +-----
 src/liblzma/rangecoder/price_table.c      |  2 +-
 src/liblzma/rangecoder/price_table_init.c | 55 -------------------
 src/liblzma/rangecoder/price_tablegen.c   | 51 +++++++++++++++---
 src/xz/Makefile.am                        |  5 +-
 src/xz/main.c                             |  3 --
 src/xzdec/xzdec.c                         |  3 --
 tests/test_block_header.c                 |  1 -
 tests/test_check.c                        |  2 -
 tests/test_filter_flags.c                 |  2 -
 tests/test_index.c                        |  2 -
 tests/test_stream_flags.c                 |  2 -
 tests/tests.h                             |  2 +-
 40 files changed, 519 insertions(+), 628 deletions(-)

commit 5cda29b5665004fc0f21d0c41d78022a6a559ab2
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-27 19:40:31 +0200

    Use 28 MiB as memory usage limit for encoding in test_compress.sh.

 tests/test_compress.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 050eb14d29e2537c014662e83599fd8a77f13c45
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-27 19:32:20 +0200

    Revert a change made in 3b34851de1eaf358cf9268922fa0eeed8278d680
    that was related to LZMA_MODE_FAST. The original code is slightly
    faster although it compresses slightly worse. But since it is fast
    mode, it is better to select the faster version.

 src/liblzma/lzma/lzma_encoder_optimum_fast.c | 23 ++++++++---------------
 1 file changed, 8 insertions(+), 15 deletions(-)

commit 4820f10d0f173864f6a2ea7479663b509ac53358
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-27 19:30:19 +0200

    Some xz command line tool improvements.

 src/xz/args.c    |  23 +++++-----
 src/xz/message.c |   4 +-
 src/xz/options.c |   2 +-
 src/xz/process.c | 133 +++++++++++++++++++++++++++++++++++++++++++------------
 src/xz/process.h |   3 ++
 5 files changed, 121 insertions(+), 44 deletions(-)

commit e33194e79d8f5ce07cb4aca909b324ae75098f7e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-27 19:27:49 +0200

    Bunch of liblzma tweaks, including some API changes.
    The API and ABI should now be very close to stable,
    although the code behind it isn't yet.

 src/liblzma/api/lzma.h                    |  8 ++--
 src/liblzma/api/lzma/block.h              | 63 ++++++++++++++++++++++++-
 src/liblzma/api/lzma/container.h          | 76 +++++++++++++++----------------
 src/liblzma/api/lzma/lzma.h               | 41 +++++++++--------
 src/liblzma/common/alone_decoder.c        | 36 +++++++--------
 src/liblzma/common/alone_encoder.c        | 22 ++++-----
 src/liblzma/common/auto_decoder.c         |  2 +-
 src/liblzma/common/block_decoder.c        | 54 +++++++++++-----------
 src/liblzma/common/block_decoder.h        |  4 +-
 src/liblzma/common/block_encoder.c        | 37 ++++++++-------
 src/liblzma/common/block_encoder.h        |  4 +-
 src/liblzma/common/block_header_decoder.c | 41 +++++++++--------
 src/liblzma/common/block_header_encoder.c | 51 ++++++++++-----------
 src/liblzma/common/block_util.c           |  3 +-
 src/liblzma/common/easy.c                 | 45 ++++++------------
 src/liblzma/common/stream_decoder.c       |  3 +-
 src/liblzma/common/stream_decoder.h       |  2 +-
 src/liblzma/common/stream_encoder.c       |  3 +-
 src/liblzma/common/stream_encoder.h       |  2 +-
 src/liblzma/common/stream_flags_decoder.c |  2 +-
 src/liblzma/common/stream_flags_encoder.c |  2 +-
 src/liblzma/lzma/lzma_encoder.c           |  2 +-
 src/liblzma/lzma/lzma_encoder_presets.c   | 53 +++++++--------------
 23 files changed, 294 insertions(+), 262 deletions(-)

commit 4d00652e75dd2736aedc3a3a8baff3dd0ea38074
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-18 13:42:52 +0200

    Updated Makefile.am that was missing from the previous commit.

 src/liblzma/common/Makefile.am | 1 -
 1 file changed, 1 deletion(-)

commit 634636fa56ccee6e744f78b0abed76c8940f2f8f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-17 21:49:53 +0200

    Remove the alignment functions for now. Maybe they will
    be added back in some form later, but the current version
    wasn't modular, so it would need fixing anyway.

 src/liblzma/api/Makefile.am      |   1 -
 src/liblzma/api/lzma.h           |   1 -
 src/liblzma/api/lzma/alignment.h |  60 ---------------------
 src/liblzma/common/alignment.c   | 114 ---------------------------------------
 4 files changed, 176 deletions(-)

commit 4fed98417d1687f5eccccb42a133fde3ec81216a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-17 20:11:23 +0200

    xz message handling improvements

 src/xz/message.c | 125 ++++++++++++++++++++++++++++++++++++++++++++++++++-----
 src/xz/message.h |   7 +++-
 src/xz/process.c |  28 ++++++++++++-
 3 files changed, 146 insertions(+), 14 deletions(-)

commit 653e457e3756ef35e5d1b2be3523b3e4b1e9ee4d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-15 23:26:43 +0200

    Fix a dumb bug in .lzma decoder which was introduced in
    the previous commit. (Probably the previous commit has
    other bugs too, it wasn't tested.)

 src/liblzma/common/alone_decoder.c | 29 ++++++++++++++---------------
 1 file changed, 14 insertions(+), 15 deletions(-)

commit 671a5adf1e844bfdd6fd327016c3c28694493158
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-15 19:39:13 +0200

    Bunch of liblzma API cleanups and fixes.

 src/liblzma/api/lzma.h              | 122 +++++++++++----------
 src/liblzma/api/lzma/base.h         | 174 ++++++++++++++++++-----------
 src/liblzma/api/lzma/block.h        | 211 +++++++++++++++++++++++-------------
 src/liblzma/api/lzma/check.h        |  28 ++---
 src/liblzma/api/lzma/container.h    | 155 +++++++++++++-------------
 src/liblzma/api/lzma/delta.h        |  12 +-
 src/liblzma/api/lzma/filter.h       |  27 +++--
 src/liblzma/api/lzma/index.h        |  97 ++++++++++++++---
 src/liblzma/api/lzma/index_hash.h   |  26 +++--
 src/liblzma/api/lzma/init.h         |   2 +-
 src/liblzma/api/lzma/lzma.h         |  12 +-
 src/liblzma/api/lzma/simple.h       |   4 +-
 src/liblzma/api/lzma/stream_flags.h |  46 +++++---
 src/liblzma/api/lzma/version.h      |   6 +-
 src/liblzma/api/lzma/vli.h          |  17 ++-
 src/liblzma/common/alone_decoder.c  |  47 +++++---
 src/liblzma/common/auto_decoder.c   |  29 +++++
 src/liblzma/common/block_util.c     |  52 +++++----
 src/liblzma/common/common.c         |  58 ++++++++++
 src/liblzma/common/common.h         |   9 +-
 src/liblzma/common/easy.c           |  33 ++++--
 src/liblzma/common/filter_common.c  |   2 +-
 src/liblzma/common/index.c          |  11 ++
 src/liblzma/common/index_decoder.c  |  46 ++++++--
 src/liblzma/common/stream_decoder.c |  47 ++++++--
 src/liblzma/lzma/lzma2_encoder.c    |   6 +-
 tests/test_index.c                  |  10 +-
 27 files changed, 863 insertions(+), 426 deletions(-)

commit 17781c2c20fd77029cb32e77792889f2f211d69d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-15 14:26:52 +0200

    The LZMA2 decoder fix introduced a bug to LZ decoder,
    which made LZ decoder return too early after dictionary
    reset. This fixes it.

 src/liblzma/lz/lz_decoder.c | 33 +++++++++++++++++++++++----------
 1 file changed, 23 insertions(+), 10 deletions(-)

commit f9f2d1e74398500724041f7fb3c38db35ad8c8d8
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-15 11:20:22 +0200

    Added two new test files.

 tests/files/README            |   7 +++++++
 tests/files/bad-1-lzma2-8.xz  | Bin 0 -> 464 bytes
 tests/files/good-1-lzma2-4.xz | Bin 0 -> 464 bytes
 3 files changed, 7 insertions(+)

commit ff7fb2c605bccc411069e07b9f11fb957aea2ddf
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-15 10:01:59 +0200

    Fix data corruption in LZMA2 decoder.

 src/liblzma/lz/lz_decoder.c      | 17 ++++++++++++++++-
 src/liblzma/lz/lz_decoder.h      |  8 +++++---
 src/liblzma/lzma/lzma2_decoder.c | 15 +++++++++++----
 3 files changed, 32 insertions(+), 8 deletions(-)

commit 1ceebcf7e1bd30b95125f0ad67a09fdb6215d613
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-13 00:54:11 +0200

    Name the package "xz" in configure.ac.

 configure.ac | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

commit a94bf00d0af9b423851905b031be5a645a657820
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-12 22:43:21 +0200

    Some adjustments to GCC warning flags. The important change
    is the removal of -pedantic. It messes up -Werror (which I
    really want to keep so that I don't miss any warnings) with
    printf format strings that are in POSIX but not in C99.

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

commit 8582d392baacd2cdac07ca60041f8c661323676d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-10 01:31:00 +0200

    Remove obsolete comment.

 src/xz/message.c | 1 -
 1 file changed, 1 deletion(-)

commit b1ae6dd731ea3636c3c2bfc7aefa71457d3328f1
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-10 01:27:15 +0200

    Use "decompression" consistently in --long-help.

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

commit 1ea9e7f15afd5d3981e2432710e932320597bca9
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-10 01:23:58 +0200

    Added preset=NUM to --lzma1 and --lzma2. This makes it easy
    to take a preset as a template and modify it a little.

 src/xz/message.c | 1 +
 src/xz/options.c | 8 ++++++++
 2 files changed, 9 insertions(+)

commit bceb3918dbb21f34976bfdd4c171a81319de71f7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-09 17:43:31 +0200

    Put the file format specification into the public domain.
    Same will be done to the actual code later.

 doc/file-format.txt | 24 +++++++++---------------
 1 file changed, 9 insertions(+), 15 deletions(-)

commit 6efa2d80d46a38861016f41f0eb6fa2ec9260fe6
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-09 17:41:49 +0200

    Make the memusage functions of LZMA1 and LZMA2 encoders
    to validate the filter options. Add missing validation
    to LZMA2 encoder when options are changed in the middle
    of encoding.

 src/liblzma/lzma/lzma2_encoder.c |  5 ++++-
 src/liblzma/lzma/lzma_encoder.c  | 44 +++++++++++++++++++++++++++-------------
 src/liblzma/lzma/lzma_encoder.h  |  2 +-
 3 files changed, 35 insertions(+), 16 deletions(-)

commit f20a03206b71ff01b827bb7a932411d6a6a4e06a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-09 10:36:24 +0200

    Updated THANKS.

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

commit ef7890d56453dca1aeb2e12db29b7e418d93dde4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-01 23:04:12 +0200

    In command line tool, take advantage of memusage calculation's
    ability to also validate the filter chain and options (not
    implemented yet for all filters).

 src/xz/process.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit ccd57afa09e332d664d6d6a7498702791ea5f659
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-01 22:59:28 +0200

    Validate the filter chain before checking filter-specific
    memory usage.

 src/liblzma/common/filter_common.c | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

commit c596fda40b62fe1683d0ac34d0c673dcaae2aa15
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-01 22:58:22 +0200

    Make the memusage functions of LZMA1 and LZMA2 decoders
    to validate the filter options.

 src/liblzma/lzma/lzma2_decoder.c |  7 ++-----
 src/liblzma/lzma/lzma_decoder.c  | 14 ++++++++++----
 src/liblzma/lzma/lzma_decoder.h  |  5 +++++
 3 files changed, 17 insertions(+), 9 deletions(-)

commit c58f469be5bb9b0bdab825c6687445fd553f4f3a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-01 22:55:18 +0200

    Added the changes for Delta filter that should have been
    part of 656ec87882ee74b192c4ea4a233a235eca7b04d4.

 src/liblzma/common/filter_decoder.c | 2 +-
 src/liblzma/common/filter_encoder.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit cd708015202dbf7585b84a8781462a20c42a324b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-01 22:50:28 +0200

    LZMA2 decoder cleanups. Make it require new LZMA properties
    also in the first LZMA chunk after a dictionary reset in
    uncompressed chunk.

 src/liblzma/lzma/lzma2_decoder.c | 95 +++++++++++++++++-----------------------
 1 file changed, 41 insertions(+), 54 deletions(-)

commit 656ec87882ee74b192c4ea4a233a235eca7b04d4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-12-01 16:30:11 +0200

    Added lzma_delta_coder_memusage() which also validates
    the options.

 src/liblzma/delta/Makefile.am     |  3 ++-
 src/liblzma/delta/delta_common.c  | 28 ++++++++++++++++++-------
 src/liblzma/delta/delta_common.h  | 19 +----------------
 src/liblzma/delta/delta_decoder.c |  2 +-
 src/liblzma/delta/delta_decoder.h |  2 +-
 src/liblzma/delta/delta_encoder.c | 14 ++++---------
 src/liblzma/delta/delta_encoder.h |  2 +-
 src/liblzma/delta/delta_private.h | 44 +++++++++++++++++++++++++++++++++++++++
 8 files changed, 75 insertions(+), 39 deletions(-)

commit 691a9155b7a28882baf37e9d1e969e32e91dbc7a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-11-29 10:03:49 +0200

    Automake includes the m4 directory, so don't add it in
    Makefile.am separately.
    
    Updated THANKS.

 Makefile.am | 1 -
 THANKS      | 1 +
 2 files changed, 1 insertion(+), 1 deletion(-)

commit c7007ddf06ac2b0e018d71d281c21b99f16e7ae0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-11-28 12:00:48 +0200

    Tested using COLUMNS environment variable to avoid broken
    progress indicator but since COLUMNS isn't usually available,
    the code was left commented out.

 src/xz/message.c | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

commit ae65dcfde27014e4d811e1a1308aa5d0fe8debbd
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-11-27 19:28:59 +0200

    Cleanups to message.c.

 src/xz/message.c | 47 ++++++++++++++++++-----------------------------
 1 file changed, 18 insertions(+), 29 deletions(-)

commit a8368b75cdcd5427299001cc42839287f27b244d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-11-25 02:37:47 +0200

    Remove the nowadays unneeded memory limitting malloc() wrapper.

 src/liblzma/api/Makefile.am         |   1 -
 src/liblzma/api/lzma.h              |   1 -
 src/liblzma/api/lzma/memlimit.h     | 207 --------------------------
 src/liblzma/common/Makefile.am      |   1 -
 src/liblzma/common/memory_limiter.c | 288 ------------------------------------
 tests/Makefile.am                   |   2 -
 tests/test_memlimit.c               | 114 --------------
 7 files changed, 614 deletions(-)

commit 69472ee5f055a2bb6f28106f0923e1461fd1d080
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-11-23 15:09:03 +0200

    VLI encoder and decoder cleanups. Made encoder return
    LZMA_PROG_ERROR in single-call mode if there's no output
    space.

 src/liblzma/common/vli_decoder.c | 15 +++++++++------
 src/liblzma/common/vli_encoder.c | 31 ++++++++++++++++++++++++-------
 2 files changed, 33 insertions(+), 13 deletions(-)

commit 4249c8c15a08f55b51b7012e6aaafce3aa9eb650
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-11-22 17:44:33 +0200

    Typo fix

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

commit 6d1d6f4598d121253dbe1084c6866b66e95c361b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-11-20 22:59:10 +0200

    Support NetBSD's errno for O_NOFOLLOW.

 src/xz/io.c | 8 ++++++++
 1 file changed, 8 insertions(+)

commit f901a290eef67b8ea4720ccdf5f46edf775ed9d7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-11-20 18:05:52 +0200

    Build xzdec and lzmadec from xzdec.c. xzdec supports only .xz
    files and lzmadec only .lzma files.

 src/xzdec/Makefile.am |   7 +-
 src/xzdec/xzdec.c     | 311 ++++++++++++++++++++++----------------------------
 2 files changed, 140 insertions(+), 178 deletions(-)

commit 86a0ed8f01c8ed44721223f885e679c71b7bb94c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-11-20 11:01:29 +0200

    Minor cleanups to xzdec.

 src/xzdec/xzdec.c | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

commit 54f716ba8905d09752dcd1519455a40bd21d5317
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-11-19 23:55:22 +0200

    Added missing check for uint16_t.

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

commit 1880a3927b23f265f63b2adb86fbdb81ea09eb06
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-11-19 23:52:24 +0200

    Renamed lzma to xz and lzmadec to xzdec. We create symlinks
    lzma, unlzma, and lzcat in "make install" for backwards
    compatibility with LZMA Utils 4.32.x; I'm not sure if this
    should be the default though.

 configure.ac            |   4 +-
 po/POTFILES.in          |  21 +-
 src/Makefile.am         |   2 +-
 src/lzma/Makefile.am    |  72 ----
 src/lzma/args.c         | 500 ---------------------------
 src/lzma/args.h         |  56 ---
 src/lzma/hardware.c     | 122 -------
 src/lzma/hardware.h     |  45 ---
 src/lzma/io.c           | 658 -----------------------------------
 src/lzma/io.h           |  97 ------
 src/lzma/list.c         | 477 --------------------------
 src/lzma/main.c         | 402 ----------------------
 src/lzma/main.h         |  60 ----
 src/lzma/message.c      | 892 ------------------------------------------------
 src/lzma/message.h      | 132 -------
 src/lzma/options.c      | 352 -------------------
 src/lzma/options.h      |  46 ---
 src/lzma/private.h      |  52 ---
 src/lzma/process.c      | 391 ---------------------
 src/lzma/process.h      |  70 ----
 src/lzma/suffix.c       | 213 ------------
 src/lzma/suffix.h       |  40 ---
 src/lzma/util.c         | 199 -----------
 src/lzma/util.h         |  71 ----
 src/lzmadec/Makefile.am |  29 --
 src/lzmadec/lzmadec.c   | 492 --------------------------
 src/xz/Makefile.am      |  74 ++++
 src/xz/args.c           | 500 +++++++++++++++++++++++++++
 src/xz/args.h           |  56 +++
 src/xz/hardware.c       | 122 +++++++
 src/xz/hardware.h       |  45 +++
 src/xz/io.c             | 658 +++++++++++++++++++++++++++++++++++
 src/xz/io.h             |  97 ++++++
 src/xz/list.c           | 477 ++++++++++++++++++++++++++
 src/xz/main.c           | 402 ++++++++++++++++++++++
 src/xz/main.h           |  60 ++++
 src/xz/message.c        | 892 ++++++++++++++++++++++++++++++++++++++++++++++++
 src/xz/message.h        | 132 +++++++
 src/xz/options.c        | 352 +++++++++++++++++++
 src/xz/options.h        |  46 +++
 src/xz/private.h        |  52 +++
 src/xz/process.c        | 391 +++++++++++++++++++++
 src/xz/process.h        |  70 ++++
 src/xz/suffix.c         | 213 ++++++++++++
 src/xz/suffix.h         |  40 +++
 src/xz/util.c           | 199 +++++++++++
 src/xz/util.h           |  71 ++++
 src/xzdec/Makefile.am   |  29 ++
 src/xzdec/xzdec.c       | 492 ++++++++++++++++++++++++++
 tests/test_compress.sh  |  29 +-
 tests/test_files.sh     |   4 +-
 51 files changed, 5498 insertions(+), 5500 deletions(-)

commit e114502b2bc371e4a45449832cb69be036360722
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-11-19 20:46:52 +0200

    Oh well, big messy commit again. Some highlights:
      - Updated to the latest, probably final file format version.
      - Command line tool reworked to not use threads anymore.
        Threading will probably go into liblzma anyway.
      - Memory usage limit is now about 30 % for uncompression
        and about 90 % for compression.
      - Progress indicator with --verbose
      - Simplified --help and full --long-help
      - Upgraded to the last LGPLv2.1+ getopt_long from gnulib.
      - Some bug fixes

 THANKS                                       |   1 +
 configure.ac                                 |  48 +-
 debug/full_flush.c                           |   6 +-
 debug/known_sizes.c                          |   2 +-
 debug/memusage.c                             |   2 +-
 debug/sync_flush.c                           |  10 +-
 doc/file-format.txt                          | 260 ++++----
 lib/Makefile.am                              |  10 +-
 lib/getopt.c                                 |  14 +-
 lib/getopt.in.h                              | 226 +++++++
 lib/getopt1.c                                |   8 +-
 lib/getopt_.h                                | 226 -------
 lib/gettext.h                                | 240 -------
 m4/getopt.m4                                 |  64 +-
 src/common/bswap.h                           |  15 +-
 src/common/physmem.h                         |   4 +
 src/common/sysdefs.h                         |  12 +-
 src/liblzma/api/lzma/block.h                 |  47 +-
 src/liblzma/api/lzma/filter.h                |   8 +
 src/liblzma/api/lzma/index.h                 |  20 +-
 src/liblzma/api/lzma/index_hash.h            |   4 +-
 src/liblzma/common/block_decoder.c           |  59 +-
 src/liblzma/common/block_encoder.c           |  41 +-
 src/liblzma/common/block_header_decoder.c    |  31 +-
 src/liblzma/common/block_header_encoder.c    |  69 +--
 src/liblzma/common/block_util.c              |  45 +-
 src/liblzma/common/common.h                  |   8 -
 src/liblzma/common/filter_common.c           |   4 +-
 src/liblzma/common/index.c                   | 259 ++++----
 src/liblzma/common/index.h                   |  33 +-
 src/liblzma/common/index_decoder.c           |  31 +-
 src/liblzma/common/index_encoder.c           |  16 +-
 src/liblzma/common/index_hash.c              |  68 +-
 src/liblzma/common/stream_decoder.c          |   9 +-
 src/liblzma/common/stream_encoder.c          |   6 +-
 src/liblzma/lz/lz_decoder.h                  |   4 +-
 src/liblzma/subblock/subblock_decoder.c      |   3 +-
 src/lzma/Makefile.am                         |   9 +-
 src/lzma/alloc.c                             | 106 ----
 src/lzma/alloc.h                             |  42 --
 src/lzma/args.c                              | 531 +++++++---------
 src/lzma/args.h                              |  42 +-
 src/lzma/error.c                             | 162 -----
 src/lzma/error.h                             |  67 --
 src/lzma/hardware.c                          |  75 ++-
 src/lzma/hardware.h                          |  16 +-
 src/lzma/help.c                              | 170 -----
 src/lzma/help.h                              |  32 -
 src/lzma/io.c                                | 757 +++++++++++------------
 src/lzma/io.h                                |  51 +-
 src/lzma/main.c                              | 392 ++++++++----
 src/lzma/main.h                              |  60 ++
 src/lzma/message.c                           | 892 +++++++++++++++++++++++++++
 src/lzma/message.h                           | 132 ++++
 src/lzma/options.c                           |  42 +-
 src/lzma/options.h                           |   6 +-
 src/lzma/private.h                           |  28 +-
 src/lzma/process.c                           | 525 ++++++++--------
 src/lzma/process.h                           |  40 ++
 src/lzma/suffix.c                            |  52 +-
 src/lzma/suffix.h                            |  17 +-
 src/lzma/util.c                              | 100 +--
 src/lzma/util.h                              |  43 +-
 src/lzmadec/lzmadec.c                        |  36 +-
 tests/files/README                           |  12 +-
 tests/files/bad-1-block_header-1.xz          | Bin 64 -> 64 bytes
 tests/files/bad-1-block_header-2.xz          | Bin 64 -> 64 bytes
 tests/files/bad-1-block_header-3.xz          | Bin 68 -> 68 bytes
 tests/files/bad-1-block_header-4.xz          | Bin 72 -> 76 bytes
 tests/files/bad-1-block_header-5.xz          | Bin 0 -> 72 bytes
 tests/files/bad-1-check-crc32.xz             | Bin 68 -> 68 bytes
 tests/files/bad-1-check-crc64.xz             | Bin 72 -> 72 bytes
 tests/files/bad-1-check-sha256.xz            | Bin 96 -> 96 bytes
 tests/files/bad-1-lzma2-1.xz                 | Bin 64 -> 64 bytes
 tests/files/bad-1-lzma2-2.xz                 | Bin 424 -> 424 bytes
 tests/files/bad-1-lzma2-3.xz                 | Bin 424 -> 424 bytes
 tests/files/bad-1-lzma2-4.xz                 | Bin 408 -> 408 bytes
 tests/files/bad-1-lzma2-5.xz                 | Bin 408 -> 408 bytes
 tests/files/bad-1-lzma2-6.xz                 | Bin 68 -> 68 bytes
 tests/files/bad-1-lzma2-7.xz                 | Bin 408 -> 408 bytes
 tests/files/bad-1-stream_flags-1.xz          | Bin 68 -> 68 bytes
 tests/files/bad-1-stream_flags-2.xz          | Bin 68 -> 68 bytes
 tests/files/bad-1-stream_flags-3.xz          | Bin 68 -> 68 bytes
 tests/files/bad-1-vli-1.xz                   | Bin 72 -> 72 bytes
 tests/files/bad-1-vli-2.xz                   | Bin 72 -> 76 bytes
 tests/files/bad-2-compressed_data_padding.xz | Bin 92 -> 92 bytes
 tests/files/bad-2-index-1.xz                 | Bin 92 -> 92 bytes
 tests/files/bad-2-index-2.xz                 | Bin 92 -> 92 bytes
 tests/files/bad-2-index-3.xz                 | Bin 92 -> 92 bytes
 tests/files/bad-2-index-4.xz                 | Bin 92 -> 92 bytes
 tests/files/bad-2-index-5.xz                 | Bin 0 -> 92 bytes
 tests/files/good-1-3delta-lzma2.xz           | Bin 528 -> 528 bytes
 tests/files/good-1-block_header-1.xz         | Bin 72 -> 72 bytes
 tests/files/good-1-block_header-2.xz         | Bin 68 -> 68 bytes
 tests/files/good-1-block_header-3.xz         | Bin 68 -> 68 bytes
 tests/files/good-1-check-crc32.xz            | Bin 68 -> 68 bytes
 tests/files/good-1-check-crc64.xz            | Bin 72 -> 72 bytes
 tests/files/good-1-check-none.xz             | Bin 64 -> 64 bytes
 tests/files/good-1-check-sha256.xz           | Bin 96 -> 96 bytes
 tests/files/good-1-delta-lzma2.tiff.xz       | Bin 51312 -> 51316 bytes
 tests/files/good-1-lzma2-1.xz                | Bin 424 -> 424 bytes
 tests/files/good-1-lzma2-2.xz                | Bin 424 -> 424 bytes
 tests/files/good-1-lzma2-3.xz                | Bin 408 -> 408 bytes
 tests/files/good-1-sparc-lzma2.xz            | Bin 2292 -> 2296 bytes
 tests/files/good-1-x86-lzma2.xz              | Bin 1936 -> 1936 bytes
 tests/files/good-2-lzma2.xz                  | Bin 92 -> 92 bytes
 tests/files/unsupported-block_header.xz      | Bin 68 -> 68 bytes
 tests/files/unsupported-check.xz             | Bin 68 -> 68 bytes
 tests/files/unsupported-filter_flags-1.xz    | Bin 68 -> 68 bytes
 tests/files/unsupported-filter_flags-2.xz    | Bin 68 -> 68 bytes
 tests/files/unsupported-filter_flags-3.xz    | Bin 68 -> 68 bytes
 tests/test_block_header.c                    |  16 +-
 tests/test_index.c                           |  42 +-
 113 files changed, 3462 insertions(+), 2946 deletions(-)

commit 3c3905b53462ae235c9438d86a4dc51086410932
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-10-09 11:12:29 +0300

    Fixed the test that should have been fixed as part
    of 1e8e4fd1f3e50129b4541406ad765d2aa1233943.

 tests/test_block_header.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0f295bf7a3ece01f667caae318cc3e3424085886
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-10-07 16:42:18 +0300

    Fixed some help messages.

 src/lzma/help.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 1e8e4fd1f3e50129b4541406ad765d2aa1233943
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-10-07 09:40:31 +0300

    Made the preset numbering more logical in liblzma API.

 src/liblzma/api/lzma/container.h        | 20 ++++++++++----------
 src/liblzma/api/lzma/lzma.h             |  2 +-
 src/liblzma/lzma/lzma_encoder_presets.c |  3 ++-
 src/lzma/args.c                         |  8 ++++----
 src/lzma/args.h                         |  2 +-
 5 files changed, 18 insertions(+), 17 deletions(-)

commit 5e4df4c3c09c82bbbb1a916784e3dc717ca4ff81
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-10-03 19:36:09 +0300

    Removed fi from po/LINGUAS.

 po/LINGUAS | 1 -
 1 file changed, 1 deletion(-)

commit fcfb86c7770328cfffa2e83b176af9a1ba2d9128
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-10-03 07:06:48 +0300

    Fixed suffix handling with --format=raw.

 src/lzma/suffix.c | 28 +++++++++++++++++++---------
 1 file changed, 19 insertions(+), 9 deletions(-)

commit bd137524f2f50e30ba054f42f1f6536cd3cee920
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-10-02 22:51:46 +0300

    Initial changes to change the suffix of the new format to .xz.
    This also fixes a bug related to --suffix option. Some issues
    with suffixes with --format=raw were not fixed.

 src/lzma/args.c        | 67 +++++++++++++++++++++++++++++++--------------
 src/lzma/args.h        | 13 +++++----
 src/lzma/help.c        |  4 +--
 src/lzma/process.c     | 24 +++++++++-------
 src/lzma/suffix.c      | 74 +++++++++++++++++++++++++++++++++++++++++---------
 tests/test_compress.sh |  3 +-
 6 files changed, 133 insertions(+), 52 deletions(-)

commit 4c321a41c482821aa3c4d64cdf886a6ed904d844
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-30 17:43:55 +0300

    Renamed the test files from .lzma suffix to .xz suffix.

 tests/files/README                             | 128 ++++++++++++-------------
 tests/files/bad-0-backward_size.lzma           | Bin 32 -> 0 bytes
 tests/files/bad-0-backward_size.xz             | Bin 0 -> 32 bytes
 tests/files/bad-0-empty-truncated.lzma         | Bin 31 -> 0 bytes
 tests/files/bad-0-empty-truncated.xz           | Bin 0 -> 31 bytes
 tests/files/bad-0-footer_magic.lzma            | Bin 32 -> 0 bytes
 tests/files/bad-0-footer_magic.xz              | Bin 0 -> 32 bytes
 tests/files/bad-0-header_magic.lzma            | Bin 32 -> 0 bytes
 tests/files/bad-0-header_magic.xz              | Bin 0 -> 32 bytes
 tests/files/bad-0-nonempty_index.lzma          | Bin 32 -> 0 bytes
 tests/files/bad-0-nonempty_index.xz            | Bin 0 -> 32 bytes
 tests/files/bad-0cat-alone.lzma                | Bin 55 -> 0 bytes
 tests/files/bad-0cat-alone.xz                  | Bin 0 -> 55 bytes
 tests/files/bad-0cat-header_magic.lzma         | Bin 64 -> 0 bytes
 tests/files/bad-0cat-header_magic.xz           | Bin 0 -> 64 bytes
 tests/files/bad-0catpad-empty.lzma             | Bin 69 -> 0 bytes
 tests/files/bad-0catpad-empty.xz               | Bin 0 -> 69 bytes
 tests/files/bad-0pad-empty.lzma                | Bin 37 -> 0 bytes
 tests/files/bad-0pad-empty.xz                  | Bin 0 -> 37 bytes
 tests/files/bad-1-block_header-1.lzma          | Bin 64 -> 0 bytes
 tests/files/bad-1-block_header-1.xz            | Bin 0 -> 64 bytes
 tests/files/bad-1-block_header-2.lzma          | Bin 64 -> 0 bytes
 tests/files/bad-1-block_header-2.xz            | Bin 0 -> 64 bytes
 tests/files/bad-1-block_header-3.lzma          | Bin 68 -> 0 bytes
 tests/files/bad-1-block_header-3.xz            | Bin 0 -> 68 bytes
 tests/files/bad-1-block_header-4.lzma          | Bin 72 -> 0 bytes
 tests/files/bad-1-block_header-4.xz            | Bin 0 -> 72 bytes
 tests/files/bad-1-check-crc32.lzma             | Bin 68 -> 0 bytes
 tests/files/bad-1-check-crc32.xz               | Bin 0 -> 68 bytes
 tests/files/bad-1-check-crc64.lzma             | Bin 72 -> 0 bytes
 tests/files/bad-1-check-crc64.xz               | Bin 0 -> 72 bytes
 tests/files/bad-1-check-sha256.lzma            | Bin 96 -> 0 bytes
 tests/files/bad-1-check-sha256.xz              | Bin 0 -> 96 bytes
 tests/files/bad-1-lzma2-1.lzma                 | Bin 64 -> 0 bytes
 tests/files/bad-1-lzma2-1.xz                   | Bin 0 -> 64 bytes
 tests/files/bad-1-lzma2-2.lzma                 | Bin 424 -> 0 bytes
 tests/files/bad-1-lzma2-2.xz                   | Bin 0 -> 424 bytes
 tests/files/bad-1-lzma2-3.lzma                 | Bin 424 -> 0 bytes
 tests/files/bad-1-lzma2-3.xz                   | Bin 0 -> 424 bytes
 tests/files/bad-1-lzma2-4.lzma                 | Bin 408 -> 0 bytes
 tests/files/bad-1-lzma2-4.xz                   | Bin 0 -> 408 bytes
 tests/files/bad-1-lzma2-5.lzma                 | Bin 408 -> 0 bytes
 tests/files/bad-1-lzma2-5.xz                   | Bin 0 -> 408 bytes
 tests/files/bad-1-lzma2-6.lzma                 | Bin 68 -> 0 bytes
 tests/files/bad-1-lzma2-6.xz                   | Bin 0 -> 68 bytes
 tests/files/bad-1-lzma2-7.lzma                 | Bin 408 -> 0 bytes
 tests/files/bad-1-lzma2-7.xz                   | Bin 0 -> 408 bytes
 tests/files/bad-1-stream_flags-1.lzma          | Bin 68 -> 0 bytes
 tests/files/bad-1-stream_flags-1.xz            | Bin 0 -> 68 bytes
 tests/files/bad-1-stream_flags-2.lzma          | Bin 68 -> 0 bytes
 tests/files/bad-1-stream_flags-2.xz            | Bin 0 -> 68 bytes
 tests/files/bad-1-stream_flags-3.lzma          | Bin 68 -> 0 bytes
 tests/files/bad-1-stream_flags-3.xz            | Bin 0 -> 68 bytes
 tests/files/bad-1-vli-1.lzma                   | Bin 72 -> 0 bytes
 tests/files/bad-1-vli-1.xz                     | Bin 0 -> 72 bytes
 tests/files/bad-1-vli-2.lzma                   | Bin 72 -> 0 bytes
 tests/files/bad-1-vli-2.xz                     | Bin 0 -> 72 bytes
 tests/files/bad-2-compressed_data_padding.lzma | Bin 92 -> 0 bytes
 tests/files/bad-2-compressed_data_padding.xz   | Bin 0 -> 92 bytes
 tests/files/bad-2-index-1.lzma                 | Bin 92 -> 0 bytes
 tests/files/bad-2-index-1.xz                   | Bin 0 -> 92 bytes
 tests/files/bad-2-index-2.lzma                 | Bin 92 -> 0 bytes
 tests/files/bad-2-index-2.xz                   | Bin 0 -> 92 bytes
 tests/files/bad-2-index-3.lzma                 | Bin 92 -> 0 bytes
 tests/files/bad-2-index-3.xz                   | Bin 0 -> 92 bytes
 tests/files/bad-2-index-4.lzma                 | Bin 92 -> 0 bytes
 tests/files/bad-2-index-4.xz                   | Bin 0 -> 92 bytes
 tests/files/good-0-empty.lzma                  | Bin 32 -> 0 bytes
 tests/files/good-0-empty.xz                    | Bin 0 -> 32 bytes
 tests/files/good-0cat-empty.lzma               | Bin 64 -> 0 bytes
 tests/files/good-0cat-empty.xz                 | Bin 0 -> 64 bytes
 tests/files/good-0catpad-empty.lzma            | Bin 68 -> 0 bytes
 tests/files/good-0catpad-empty.xz              | Bin 0 -> 68 bytes
 tests/files/good-0pad-empty.lzma               | Bin 36 -> 0 bytes
 tests/files/good-0pad-empty.xz                 | Bin 0 -> 36 bytes
 tests/files/good-1-3delta-lzma2.lzma           | Bin 528 -> 0 bytes
 tests/files/good-1-3delta-lzma2.xz             | Bin 0 -> 528 bytes
 tests/files/good-1-block_header-1.lzma         | Bin 72 -> 0 bytes
 tests/files/good-1-block_header-1.xz           | Bin 0 -> 72 bytes
 tests/files/good-1-block_header-2.lzma         | Bin 68 -> 0 bytes
 tests/files/good-1-block_header-2.xz           | Bin 0 -> 68 bytes
 tests/files/good-1-block_header-3.lzma         | Bin 68 -> 0 bytes
 tests/files/good-1-block_header-3.xz           | Bin 0 -> 68 bytes
 tests/files/good-1-check-crc32.lzma            | Bin 68 -> 0 bytes
 tests/files/good-1-check-crc32.xz              | Bin 0 -> 68 bytes
 tests/files/good-1-check-crc64.lzma            | Bin 72 -> 0 bytes
 tests/files/good-1-check-crc64.xz              | Bin 0 -> 72 bytes
 tests/files/good-1-check-none.lzma             | Bin 64 -> 0 bytes
 tests/files/good-1-check-none.xz               | Bin 0 -> 64 bytes
 tests/files/good-1-check-sha256.lzma           | Bin 96 -> 0 bytes
 tests/files/good-1-check-sha256.xz             | Bin 0 -> 96 bytes
 tests/files/good-1-delta-lzma2.tiff.lzma       | Bin 51312 -> 0 bytes
 tests/files/good-1-delta-lzma2.tiff.xz         | Bin 0 -> 51312 bytes
 tests/files/good-1-lzma2-1.lzma                | Bin 424 -> 0 bytes
 tests/files/good-1-lzma2-1.xz                  | Bin 0 -> 424 bytes
 tests/files/good-1-lzma2-2.lzma                | Bin 424 -> 0 bytes
 tests/files/good-1-lzma2-2.xz                  | Bin 0 -> 424 bytes
 tests/files/good-1-lzma2-3.lzma                | Bin 408 -> 0 bytes
 tests/files/good-1-lzma2-3.xz                  | Bin 0 -> 408 bytes
 tests/files/good-1-sparc-lzma2.lzma            | Bin 2292 -> 0 bytes
 tests/files/good-1-sparc-lzma2.xz              | Bin 0 -> 2292 bytes
 tests/files/good-1-x86-lzma2.lzma              | Bin 1936 -> 0 bytes
 tests/files/good-1-x86-lzma2.xz                | Bin 0 -> 1936 bytes
 tests/files/good-2-lzma2.lzma                  | Bin 92 -> 0 bytes
 tests/files/good-2-lzma2.xz                    | Bin 0 -> 92 bytes
 tests/files/unsupported-block_header.lzma      | Bin 68 -> 0 bytes
 tests/files/unsupported-block_header.xz        | Bin 0 -> 68 bytes
 tests/files/unsupported-check.lzma             | Bin 68 -> 0 bytes
 tests/files/unsupported-check.xz               | Bin 0 -> 68 bytes
 tests/files/unsupported-filter_flags-1.lzma    | Bin 68 -> 0 bytes
 tests/files/unsupported-filter_flags-1.xz      | Bin 0 -> 68 bytes
 tests/files/unsupported-filter_flags-2.lzma    | Bin 68 -> 0 bytes
 tests/files/unsupported-filter_flags-2.xz      | Bin 0 -> 68 bytes
 tests/files/unsupported-filter_flags-3.lzma    | Bin 68 -> 0 bytes
 tests/files/unsupported-filter_flags-3.xz      | Bin 0 -> 68 bytes
 tests/test_files.sh                            |   6 +-
 116 files changed, 66 insertions(+), 68 deletions(-)

commit 8e60c889a2816a63013a35c99ce26bf28f5b78eb
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-30 13:57:44 +0300

    Fixed Stream decoder to actually use the first_stream variable.

 src/liblzma/common/stream_decoder.c | 5 +++++
 1 file changed, 5 insertions(+)

commit 3bdbc12c054d1961133ee19802af7dd3c3494543
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-30 13:56:57 +0300

    Added one more test file.

 tests/files/README                     |  15 +++++++++++----
 tests/files/bad-0cat-header_magic.lzma | Bin 0 -> 64 bytes
 2 files changed, 11 insertions(+), 4 deletions(-)

commit a6639022fdc536e5659b070a465221b4cf7c51fa
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-30 13:34:07 +0300

    Fixed uninitialized variable in Stream decoder.

 src/liblzma/common/stream_decoder.c | 1 +
 1 file changed, 1 insertion(+)

commit ed3709000a3f17ecefab29b2235d7e2221b00003
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-30 13:27:28 +0300

    Added two test files.

 tests/files/README                  |   6 ++++++
 tests/files/bad-0-footer_magic.lzma | Bin 0 -> 32 bytes
 tests/files/bad-0-header_magic.lzma | Bin 0 -> 32 bytes
 3 files changed, 6 insertions(+)

commit ea560b0ea80525752bdcd0074d24f8dc170bbe29
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-27 23:49:24 +0300

    Fix conflicting Subblock helper filter's ID.

 src/liblzma/common/common.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ad97483b6e55142fd8d5c041db057017a891cd95
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-27 23:37:13 +0300

    Changed magic bytes to match the updated spec. Filename
    suffix wasn't changed yet.

 src/liblzma/common/auto_decoder.c              |   4 ++--
 src/liblzma/common/stream_flags_common.c       |   2 +-
 tests/files/bad-0-backward_size.lzma           | Bin 32 -> 32 bytes
 tests/files/bad-0-empty-truncated.lzma         | Bin 31 -> 31 bytes
 tests/files/bad-0-nonempty_index.lzma          | Bin 32 -> 32 bytes
 tests/files/bad-0cat-alone.lzma                | Bin 55 -> 55 bytes
 tests/files/bad-0catpad-empty.lzma             | Bin 69 -> 69 bytes
 tests/files/bad-0pad-empty.lzma                | Bin 37 -> 37 bytes
 tests/files/bad-1-block_header-1.lzma          | Bin 64 -> 64 bytes
 tests/files/bad-1-block_header-2.lzma          | Bin 64 -> 64 bytes
 tests/files/bad-1-block_header-3.lzma          | Bin 68 -> 68 bytes
 tests/files/bad-1-block_header-4.lzma          | Bin 72 -> 72 bytes
 tests/files/bad-1-check-crc32.lzma             | Bin 68 -> 68 bytes
 tests/files/bad-1-check-crc64.lzma             | Bin 72 -> 72 bytes
 tests/files/bad-1-check-sha256.lzma            | Bin 96 -> 96 bytes
 tests/files/bad-1-lzma2-1.lzma                 | Bin 64 -> 64 bytes
 tests/files/bad-1-lzma2-2.lzma                 | Bin 424 -> 424 bytes
 tests/files/bad-1-lzma2-3.lzma                 | Bin 424 -> 424 bytes
 tests/files/bad-1-lzma2-4.lzma                 | Bin 408 -> 408 bytes
 tests/files/bad-1-lzma2-5.lzma                 | Bin 408 -> 408 bytes
 tests/files/bad-1-lzma2-6.lzma                 | Bin 68 -> 68 bytes
 tests/files/bad-1-lzma2-7.lzma                 | Bin 408 -> 408 bytes
 tests/files/bad-1-stream_flags-1.lzma          | Bin 68 -> 68 bytes
 tests/files/bad-1-stream_flags-2.lzma          | Bin 68 -> 68 bytes
 tests/files/bad-1-stream_flags-3.lzma          | Bin 68 -> 68 bytes
 tests/files/bad-1-vli-1.lzma                   | Bin 72 -> 72 bytes
 tests/files/bad-1-vli-2.lzma                   | Bin 72 -> 72 bytes
 tests/files/bad-2-compressed_data_padding.lzma | Bin 92 -> 92 bytes
 tests/files/bad-2-index-1.lzma                 | Bin 92 -> 92 bytes
 tests/files/bad-2-index-2.lzma                 | Bin 92 -> 92 bytes
 tests/files/bad-2-index-3.lzma                 | Bin 92 -> 92 bytes
 tests/files/bad-2-index-4.lzma                 | Bin 92 -> 92 bytes
 tests/files/good-0-empty.lzma                  | Bin 32 -> 32 bytes
 tests/files/good-0cat-empty.lzma               | Bin 64 -> 64 bytes
 tests/files/good-0catpad-empty.lzma            | Bin 68 -> 68 bytes
 tests/files/good-0pad-empty.lzma               | Bin 36 -> 36 bytes
 tests/files/good-1-3delta-lzma2.lzma           | Bin 528 -> 528 bytes
 tests/files/good-1-block_header-1.lzma         | Bin 72 -> 72 bytes
 tests/files/good-1-block_header-2.lzma         | Bin 68 -> 68 bytes
 tests/files/good-1-block_header-3.lzma         | Bin 68 -> 68 bytes
 tests/files/good-1-check-crc32.lzma            | Bin 68 -> 68 bytes
 tests/files/good-1-check-crc64.lzma            | Bin 72 -> 72 bytes
 tests/files/good-1-check-none.lzma             | Bin 64 -> 64 bytes
 tests/files/good-1-check-sha256.lzma           | Bin 96 -> 96 bytes
 tests/files/good-1-delta-lzma2.tiff.lzma       | Bin 51312 -> 51312 bytes
 tests/files/good-1-lzma2-1.lzma                | Bin 424 -> 424 bytes
 tests/files/good-1-lzma2-2.lzma                | Bin 424 -> 424 bytes
 tests/files/good-1-lzma2-3.lzma                | Bin 408 -> 408 bytes
 tests/files/good-1-sparc-lzma2.lzma            | Bin 2292 -> 2292 bytes
 tests/files/good-1-x86-lzma2.lzma              | Bin 1936 -> 1936 bytes
 tests/files/good-2-lzma2.lzma                  | Bin 92 -> 92 bytes
 tests/files/unsupported-block_header.lzma      | Bin 68 -> 68 bytes
 tests/files/unsupported-check.lzma             | Bin 68 -> 68 bytes
 tests/files/unsupported-filter_flags-1.lzma    | Bin 68 -> 68 bytes
 tests/files/unsupported-filter_flags-2.lzma    | Bin 68 -> 68 bytes
 tests/files/unsupported-filter_flags-3.lzma    | Bin 68 -> 68 bytes
 56 files changed, 3 insertions(+), 3 deletions(-)

commit 7a57069167e9e63394e2b095ee3a63253fcb51c7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-27 23:16:09 +0300

    Remove po/fi.po since I'm not keeping it updated for now.

 po/fi.po | 446 ---------------------------------------------------------------
 1 file changed, 446 deletions(-)

commit 018ae09df8f2fee5a7374f307df4cb42fad0b81e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-27 23:13:54 +0300

    Fix also test_compress.sh.

 tests/test_compress.sh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 3a62a5fb85d2eebd8666e64ed5d364d095062858
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-27 23:01:15 +0300

    Fixed compilation of test_filter_flags.c, which was broken by
    1dcecfb09b55157b8653d747963069c8bed74f04.

 tests/test_filter_flags.c | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

commit c6ca26eef7cd07eba449035514e2b8f9ac3111c0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-27 19:11:02 +0300

    Updated file format specification. It changes the suffix
    of the new format to .xz and removes the recently added
    LZMA filter.

 doc/file-format.txt | 125 ++++++++++++++--------------------------------------
 1 file changed, 32 insertions(+), 93 deletions(-)

commit 1dcecfb09b55157b8653d747963069c8bed74f04
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-27 19:09:21 +0300

    Some API changes, bug fixes, cleanups etc.

 configure.ac                                   |  18 +-
 debug/full_flush.c                             |   7 +-
 debug/known_sizes.c                            |   6 +-
 debug/memusage.c                               |  22 +--
 debug/sync_flush.c                             |  18 +-
 src/liblzma/Makefile.am                        |   2 +-
 src/liblzma/api/lzma/delta.h                   |   8 +-
 src/liblzma/api/lzma/lzma.h                    | 230 ++++++++++++++++---------
 src/liblzma/common/alignment.c                 |   7 +-
 src/liblzma/common/alone_decoder.c             |  11 +-
 src/liblzma/common/alone_encoder.c             |   9 +-
 src/liblzma/common/chunk_size.c                |   2 +-
 src/liblzma/common/easy.c                      |  20 ++-
 src/liblzma/common/filter_common.c             |   4 +-
 src/liblzma/common/filter_decoder.c            |   4 +-
 src/liblzma/common/filter_encoder.c            |   4 +-
 src/liblzma/common/init_encoder.c              |   2 +-
 src/liblzma/delta/delta_common.c               |  12 +-
 src/liblzma/delta/delta_common.h               |   2 +-
 src/liblzma/delta/delta_decoder.c              |   2 +-
 src/liblzma/delta/delta_encoder.c              |   6 +-
 src/liblzma/lz/lz_encoder.c                    |  30 ++--
 src/liblzma/lz/lz_encoder.h                    |  26 +--
 src/liblzma/lz/lz_encoder_mf.c                 |  30 ++--
 src/liblzma/lzma/Makefile.am                   |   4 +-
 src/liblzma/lzma/lzma2_decoder.c               |  10 +-
 src/liblzma/lzma/lzma2_encoder.c               |  27 ++-
 src/liblzma/lzma/lzma_common.h                 |  26 ++-
 src/liblzma/lzma/lzma_decoder.c                |  37 ++--
 src/liblzma/lzma/lzma_encoder.c                |  51 +++---
 src/liblzma/lzma/lzma_encoder_optimum_fast.c   |  10 +-
 src/liblzma/lzma/lzma_encoder_optimum_normal.c |  20 +--
 src/liblzma/lzma/lzma_encoder_presets.c        |  50 ++++--
 src/liblzma/rangecoder/Makefile.am             |   4 +-
 src/liblzma/subblock/subblock_decoder.c        |   2 +-
 src/lzma/args.c                                |  33 ++--
 src/lzma/help.c                                |  17 +-
 src/lzma/options.c                             |  92 +++++-----
 tests/test_block_header.c                      |   9 +-
 tests/test_compress.sh                         |   4 +-
 tests/test_filter_flags.c                      |   2 +-
 41 files changed, 482 insertions(+), 398 deletions(-)

commit 5cc5064cae603b649c64c40125c7dd365de54c9d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-27 11:28:49 +0300

    Added 7z2lzma.bash.

 extra/7z2lzma/7z2lzma.bash | 114 +++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 114 insertions(+)

commit f147666a5cd15542d4e427da58629f4a71cc38e1
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-17 22:11:39 +0300

    Miscellaneous LZ and LZMA encoder cleanups

 src/liblzma/api/lzma/lzma.h              | 14 -------
 src/liblzma/lz/lz_encoder.c              |  8 +++-
 src/liblzma/lzma/Makefile.am             |  1 -
 src/liblzma/lzma/lzma_encoder.c          | 64 ++++++++++++--------------------
 src/liblzma/lzma/lzma_encoder_features.c | 59 -----------------------------
 5 files changed, 29 insertions(+), 117 deletions(-)

commit 13d68b069849e19c33822cd8996cd6447890abb1
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-13 13:54:00 +0300

    LZ decoder cleanup

 src/liblzma/lz/lz_decoder.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

commit 13a74b78e37f16c9096ba5fe1859cc04eaa2f9f7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-13 12:10:43 +0300

    Renamed constants:
      - LZMA_VLI_VALUE_MAX -> LZMA_VLI_MAX
      - LZMA_VLI_VALUE_UNKNOWN -> LZMA_VLI_UNKNOWN
      - LZMA_HEADER_ERRRO -> LZMA_OPTIONS_ERROR

 debug/full_flush.c                        |  2 +-
 debug/known_sizes.c                       |  2 +-
 debug/sync_flush.c                        |  2 +-
 src/liblzma/api/lzma/alignment.h          |  2 +-
 src/liblzma/api/lzma/base.h               |  4 ++--
 src/liblzma/api/lzma/block.h              | 28 ++++++++++++++--------------
 src/liblzma/api/lzma/container.h          | 12 ++++++------
 src/liblzma/api/lzma/filter.h             | 28 ++++++++++++++--------------
 src/liblzma/api/lzma/index.h              |  2 +-
 src/liblzma/api/lzma/lzma.h               |  4 ++--
 src/liblzma/api/lzma/simple.h             |  2 +-
 src/liblzma/api/lzma/stream_flags.h       | 20 ++++++++++----------
 src/liblzma/api/lzma/vli.h                | 16 ++++++++--------
 src/liblzma/common/alignment.c            |  6 +++---
 src/liblzma/common/alone_decoder.c        |  2 +-
 src/liblzma/common/auto_decoder.c         |  2 +-
 src/liblzma/common/block_decoder.c        | 12 ++++++------
 src/liblzma/common/block_encoder.c        |  6 +++---
 src/liblzma/common/block_header_decoder.c | 16 ++++++++--------
 src/liblzma/common/block_header_encoder.c | 24 ++++++++++++------------
 src/liblzma/common/block_util.c           |  8 ++++----
 src/liblzma/common/chunk_size.c           |  2 +-
 src/liblzma/common/easy.c                 |  4 ++--
 src/liblzma/common/filter_common.c        | 22 +++++++++++-----------
 src/liblzma/common/filter_decoder.c       |  6 +++---
 src/liblzma/common/filter_encoder.c       | 14 +++++++-------
 src/liblzma/common/index.c                | 24 +++++++++++-------------
 src/liblzma/common/index.h                |  2 +-
 src/liblzma/common/index_hash.c           | 13 ++++++-------
 src/liblzma/common/stream_decoder.c       |  4 ++--
 src/liblzma/common/stream_encoder.c       |  4 ++--
 src/liblzma/common/stream_flags_common.c  |  6 +++---
 src/liblzma/common/stream_flags_decoder.c |  6 +++---
 src/liblzma/common/stream_flags_encoder.c |  4 ++--
 src/liblzma/common/vli_encoder.c          |  2 +-
 src/liblzma/common/vli_size.c             |  2 +-
 src/liblzma/delta/delta_common.c          |  2 +-
 src/liblzma/delta/delta_decoder.c         |  2 +-
 src/liblzma/delta/delta_encoder.c         |  2 +-
 src/liblzma/lz/lz_decoder.c               |  2 +-
 src/liblzma/lz/lz_encoder.c               |  2 +-
 src/liblzma/lzma/lzma2_decoder.c          |  6 +++---
 src/liblzma/lzma/lzma_decoder.c           | 14 +++++++-------
 src/liblzma/lzma/lzma_encoder.c           |  8 ++++----
 src/liblzma/simple/simple_coder.c         |  2 +-
 src/liblzma/simple/simple_decoder.c       |  2 +-
 src/liblzma/subblock/subblock_decoder.c   |  6 +++---
 src/liblzma/subblock/subblock_encoder.c   | 17 ++++++++---------
 src/lzma/args.c                           |  2 +-
 src/lzma/error.c                          |  2 +-
 src/lzma/list.c                           |  6 +++---
 src/lzmadec/lzmadec.c                     |  2 +-
 tests/test_block.c                        |  8 ++++----
 tests/test_block_header.c                 | 30 +++++++++++++++---------------
 tests/test_filter_flags.c                 |  2 +-
 tests/test_index.c                        |  2 +-
 tests/test_stream_flags.c                 |  8 ++++----
 tests/tests.h                             |  2 +-
 58 files changed, 220 insertions(+), 224 deletions(-)

commit 320601b2c7b08fc7da9da18d5bf7c3c1a189b080
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-12 22:41:40 +0300

    Improved the Stream Flags handling API.

 src/liblzma/api/lzma/stream_flags.h       | 84 +++++++++++++++++++++++++++++--
 src/liblzma/common/stream_decoder.c       |  5 +-
 src/liblzma/common/stream_encoder.c       |  2 +
 src/liblzma/common/stream_flags_common.c  | 28 ++++++++---
 src/liblzma/common/stream_flags_common.h  |  9 ++++
 src/liblzma/common/stream_flags_decoder.c |  3 +-
 src/liblzma/common/stream_flags_encoder.c | 10 ++--
 tests/test_stream_flags.c                 |  8 ++-
 8 files changed, 129 insertions(+), 20 deletions(-)

commit ec490da5228263b25bf786bb23d1008468f55b30
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-11 23:10:44 +0300

    Simplified debug/known_sizes.c to match the relaxed
    requirements of Block encoder.

 debug/known_sizes.c | 14 +++++---------
 1 file changed, 5 insertions(+), 9 deletions(-)

commit 16e8b98f2659347edfa74afdbbb9e73311153cb9
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-11 23:09:24 +0300

    Remove a check from Block encoder that should have already
    been removed in 2ba01bfa755e47ff6af84a978e3c8d63d7d2775e.

 src/liblzma/common/block_encoder.c | 5 -----
 1 file changed, 5 deletions(-)

commit 5a710c3805bdf6d7e3c92e954e4e4565b27bcb13
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-11 20:02:38 +0300

    Remove bogus #includes.

 src/liblzma/common/Makefile.am            |  1 -
 src/liblzma/common/stream_decoder.c       |  3 ---
 src/liblzma/common/stream_encoder.c       |  1 -
 src/liblzma/common/stream_flags_decoder.h | 31 -------------------------------
 4 files changed, 36 deletions(-)

commit 01892b2ca5f69bed0ea746e04b604030d57806bb
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-11 10:49:14 +0300

    Updated THANKS.

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

commit 962f2231d49409fe6852e44ffe8c5dbabb04bc7d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-11 10:48:12 +0300

    Fix a compiler error on big endian systems that don't
    support unaligned memory access.

 src/common/integer.h | 32 ++++++++++++++++++--------------
 1 file changed, 18 insertions(+), 14 deletions(-)

commit fa3ab0df8ae7a8a1ad55b52266dc0fd387458671
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-11 10:46:14 +0300

    Silence a compiler warning.

 src/lzma/process.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9373e81e18822db4972819442ea4c2cb9955470b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-10 19:16:32 +0300

    Bumped version to 4.999.6alpha.

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

commit cb072b7c8442ba68bb0c62c0abbbe939794887a3
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-10 17:02:00 +0300

    Check for LZMA_FILTER_RESERVED_START in filter_flags_encoder.c.
    Use LZMA_PROG_ERROR instead of LZMA_HEADER_ERROR if the Filter ID
    is in the reserved range. This allows Block Header encoder to
    detect unallowed Filter IDs, which is good for Stream encoder.

 src/liblzma/common/filter_flags_encoder.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit 123ab0acec435c9e9866a99e30482116cfbd9ba5
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-10 16:44:32 +0300

    Filter handling cleanups

 src/liblzma/api/lzma/filter.h       | 133 +++++++++++++++++++++++++++---------
 src/liblzma/common/filter_common.h  |   3 +
 src/liblzma/common/filter_decoder.c |  80 +++++++---------------
 src/liblzma/common/filter_decoder.h |   5 --
 src/liblzma/common/filter_encoder.c |  82 +++++++---------------
 src/liblzma/common/filter_encoder.h |   4 --
 6 files changed, 156 insertions(+), 151 deletions(-)

commit 9cfcd0c4f2f865d8fbbb46ea28344a9be0dd8ad1
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-10 00:33:00 +0300

    Comments

 src/liblzma/common/stream_encoder.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 2ba01bfa755e47ff6af84a978e3c8d63d7d2775e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-10 00:27:02 +0300

    Cleaned up Block encoder and moved the no longer shared
    code from block_private.h to block_decoder.c. Now the Block
    encoder doesn't need compressed_size and uncompressed_size
    from lzma_block structure to be initialized.

 src/liblzma/api/lzma/block.h       |  3 --
 src/liblzma/common/Makefile.am     |  1 -
 src/liblzma/common/block_decoder.c | 23 +++++++++-
 src/liblzma/common/block_encoder.c | 92 ++++++++++++++++++--------------------
 src/liblzma/common/block_private.h | 47 -------------------
 5 files changed, 66 insertions(+), 100 deletions(-)

commit 07efcb5a6bc5d7018798ebd728586f84183e7d64
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-07 10:23:13 +0300

    Changed Filter ID of LZMA to 0x20.

 doc/file-format.txt         | 4 ++--
 src/liblzma/api/lzma/lzma.h | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

commit 32fe5fa541e82c08e054086279079ae5016bd8d8
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-06 23:42:50 +0300

    Comments

 src/liblzma/api/lzma/base.h      | 81 ++++++++++++++++++++++++++--------------
 src/liblzma/api/lzma/container.h |  6 ++-
 src/liblzma/lz/lz_encoder.c      |  3 +-
 src/liblzma/lz/lz_encoder.h      | 12 +++---
 src/liblzma/lz/lz_encoder_mf.c   |  2 +-
 5 files changed, 65 insertions(+), 39 deletions(-)

commit 0a31ed9d5e3cde4feb094b66f3a8b2c074605d84
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-06 15:14:30 +0300

    Some API cleanups

 src/liblzma/api/lzma/base.h         | 314 +++++++++++++++++++++++-------------
 src/liblzma/api/lzma/check.h        |  10 ++
 src/liblzma/api/lzma/container.h    |  40 +++--
 src/liblzma/common/auto_decoder.c   |  18 +--
 src/liblzma/common/common.c         |   7 +
 src/liblzma/common/common.h         |  18 ++-
 src/liblzma/common/easy.c           |   2 +-
 src/liblzma/common/stream_decoder.c |  31 ++--
 src/lzma/process.c                  |   2 +-
 src/lzmadec/lzmadec.c               |   6 +-
 tests/tests.h                       |  72 +++------
 11 files changed, 301 insertions(+), 219 deletions(-)

commit da98df54400998be2a6c3876f9655a3c51b93c10
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-04 11:53:06 +0300

    Added support for raw encoding and decoding to the command
    line tool, and made various cleanups. --lzma was renamed to
    --lzma1 to prevent people from accidentally using LZMA when
    they want LZMA2.

 src/lzma/args.c    | 17 +++++++++--------
 src/lzma/args.h    |  1 +
 src/lzma/help.c    | 24 ++++++------------------
 src/lzma/process.c | 42 ++++++++++++++++++++++++++++++++++--------
 4 files changed, 50 insertions(+), 34 deletions(-)

commit 2496aee8a7741a8a0d42987db41ff2cf1a4bdabd
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-04 10:39:15 +0300

    Don't allow LZMA_SYNC_FLUSH with decoders anymore. There's
    simply nothing that would use it. Allow LZMA_FINISH to the
    decoders, which will usually ignore it (auto decoder and
    Stream decoder being exceptions).

 src/liblzma/common/alone_decoder.c  | 1 -
 src/liblzma/common/block_decoder.c  | 2 +-
 src/liblzma/common/filter_decoder.c | 2 +-
 3 files changed, 2 insertions(+), 3 deletions(-)

commit bea301c26d5d52675e11e0236faec0492af98f60
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-03 17:06:25 +0300

    Minor updates to the file format specification.

 doc/file-format.txt | 105 ++++++++++++++++++++++++++++++++++++++++++----------
 1 file changed, 85 insertions(+), 20 deletions(-)

commit 9c75b089b4a9e0edcf4cf7970a4383768707d6c8
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-02 19:33:32 +0300

    Command line tool fixes

 src/lzma/process.c | 21 +++++++++++++--------
 1 file changed, 13 insertions(+), 8 deletions(-)

commit bab0590504b5aeff460ab4ca8c964dd7c1bad9e4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-02 19:31:42 +0300

    Auto decoder cleanup

 src/liblzma/common/auto_decoder.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 689602336d126a46b60d791a67decab65e1e81f5
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-02 19:12:12 +0300

    Updated auto decoder to handle LZMA_CONCATENATED when decoding
    LZMA_Alone files. Decoding of concatenated LZMA_Alone files is
    intentionally not supported, so it is better to put this in
    auto decoder than LZMA_Alone decoder.

 src/liblzma/common/auto_decoder.c | 87 ++++++++++++++++++++++++++++++++-------
 1 file changed, 71 insertions(+), 16 deletions(-)

commit 80c4158f19904026433eb6f5d5ca98a0ecd4f66c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-02 14:56:52 +0300

    Stream decoder cleanups

 src/liblzma/common/stream_decoder.c | 57 +++++++++++++++++++++----------------
 1 file changed, 32 insertions(+), 25 deletions(-)

commit fc681657450ce57be1fe08f7a15d31dcc705e514
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-09-02 11:45:39 +0300

    Some fixes to LZ encoder.

 src/liblzma/lz/lz_encoder.c    | 56 ++++++++++++++++++++-----
 src/liblzma/lz/lz_encoder.h    | 18 ++++----
 src/liblzma/lz/lz_encoder_mf.c | 95 +++++++++++++++++-------------------------
 3 files changed, 94 insertions(+), 75 deletions(-)

commit ede675f9ac1ca82a7d7c290324adba672118bc8d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-08-31 11:47:01 +0300

    Fix wrong pointer calculation in LZMA encoder.

 src/liblzma/lzma/lzma_encoder.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 3b34851de1eaf358cf9268922fa0eeed8278d680
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-08-28 22:53:15 +0300

    Sort of garbage collection commit. :-| Many things are still
    broken. API has changed a lot and it will still change a
    little more here and there. The command line tool doesn't
    have all the required changes to reflect the API changes, so
    it's easy to get "internal error" or trigger assertions.

 configure.ac                                       |  356 +++---
 debug/Makefile.am                                  |    5 +-
 debug/crc32.c                                      |   45 +
 debug/full_flush.c                                 |   14 +-
 debug/hex2bin.c                                    |   54 +
 debug/known_sizes.c                                |  135 ++
 debug/memusage.c                                   |    8 +-
 debug/sync_flush.c                                 |   20 +-
 src/common/integer.h                               |   26 +-
 src/common/sysdefs.h                               |   42 +-
 src/liblzma/Makefile.am                            |   17 +-
 src/liblzma/api/Makefile.am                        |    6 +-
 src/liblzma/api/lzma.h                             |  161 ++-
 src/liblzma/api/lzma/alignment.h                   |    6 +-
 src/liblzma/api/lzma/alone.h                       |   52 -
 src/liblzma/api/lzma/auto.h                        |   36 -
 src/liblzma/api/lzma/base.h                        |   61 +-
 src/liblzma/api/lzma/block.h                       |   38 +-
 src/liblzma/api/lzma/check.h                       |   41 +-
 src/liblzma/api/lzma/container.h                   |  252 ++++
 src/liblzma/api/lzma/delta.h                       |   36 +-
 src/liblzma/api/lzma/easy.h                        |  121 --
 src/liblzma/api/lzma/filter.h                      |   74 +-
 src/liblzma/api/lzma/index.h                       |   40 +-
 src/liblzma/api/lzma/index_hash.h                  |   12 +-
 src/liblzma/api/lzma/lzma.h                        |  222 ++--
 src/liblzma/api/lzma/memlimit.h                    |   15 +-
 src/liblzma/api/lzma/raw.h                         |   60 -
 src/liblzma/api/lzma/simple.h                      |    2 +-
 src/liblzma/api/lzma/stream.h                      |   53 -
 src/liblzma/api/lzma/stream_flags.h                |   17 +-
 src/liblzma/api/lzma/subblock.h                    |    4 +-
 src/liblzma/api/lzma/version.h                     |   10 +-
 src/liblzma/api/lzma/vli.h                         |  131 +-
 src/liblzma/check/check.c                          |  128 +-
 src/liblzma/check/check.h                          |   67 +-
 src/liblzma/check/sha256.c                         |   29 +-
 src/liblzma/common/Makefile.am                     |   51 +-
 src/liblzma/common/alignment.c                     |    4 +-
 src/liblzma/common/allocator.c                     |   58 -
 src/liblzma/common/alone_decoder.c                 |   49 +-
 src/liblzma/common/alone_decoder.h                 |    9 +-
 src/liblzma/common/alone_encoder.c                 |   13 +-
 src/liblzma/common/auto_decoder.c                  |   38 +-
 src/liblzma/common/block_decoder.c                 |   67 +-
 src/liblzma/common/block_decoder.h                 |    2 +-
 src/liblzma/common/block_encoder.c                 |   42 +-
 src/liblzma/common/block_encoder.h                 |    2 +-
 src/liblzma/common/block_header_decoder.c          |    6 +-
 src/liblzma/common/block_header_encoder.c          |    9 +-
 src/liblzma/common/block_util.c                    |   10 +-
 src/liblzma/common/code.c                          |  203 ---
 src/liblzma/common/common.c                        |  298 +++++
 src/liblzma/common/common.h                        |  237 ++--
 src/liblzma/common/delta_common.c                  |   66 -
 src/liblzma/common/delta_common.h                  |   44 -
 src/liblzma/common/delta_decoder.c                 |   61 -
 src/liblzma/common/delta_decoder.h                 |   28 -
 src/liblzma/common/delta_encoder.c                 |   98 --
 src/liblzma/common/delta_encoder.h                 |   28 -
 src/liblzma/common/easy.c                          |   18 +-
 src/liblzma/common/features.c                      |   66 -
 src/liblzma/common/filter_common.c                 |  262 ++++
 src/liblzma/common/filter_common.h                 |   52 +
 src/liblzma/common/filter_decoder.c                |  236 ++++
 src/liblzma/common/filter_decoder.h                |   35 +
 src/liblzma/common/filter_encoder.c                |  308 +++++
 src/liblzma/common/filter_encoder.h                |   38 +
 src/liblzma/common/filter_flags_decoder.c          |  185 +--
 src/liblzma/common/filter_flags_encoder.c          |  261 +---
 src/liblzma/common/index_decoder.c                 |   14 +-
 src/liblzma/common/index_encoder.c                 |   16 +-
 src/liblzma/common/index_hash.c                    |    8 +-
 src/liblzma/common/init_encoder.c                  |    2 +-
 src/liblzma/common/memory_usage.c                  |  112 --
 src/liblzma/common/next_coder.c                    |   65 -
 src/liblzma/common/raw_common.c                    |  127 --
 src/liblzma/common/raw_common.h                    |   30 -
 src/liblzma/common/raw_decoder.c                   |  116 --
 src/liblzma/common/raw_decoder.h                   |   29 -
 src/liblzma/common/raw_encoder.c                   |  111 --
 src/liblzma/common/raw_encoder.h                   |   29 -
 src/liblzma/common/stream_common.c                 |   23 -
 src/liblzma/common/stream_common.h                 |   31 -
 src/liblzma/common/stream_decoder.c                |  238 +++-
 src/liblzma/common/stream_decoder.h                |    4 +-
 src/liblzma/common/stream_encoder.c                |   35 +-
 src/liblzma/common/stream_encoder.h                |    2 +-
 src/liblzma/common/stream_flags_common.c           |   40 +
 src/liblzma/common/stream_flags_common.h           |   31 +
 src/liblzma/common/stream_flags_decoder.c          |    2 +-
 src/liblzma/common/stream_flags_encoder.c          |    2 +-
 src/liblzma/common/stream_flags_equal.c            |   36 -
 src/liblzma/common/version.c                       |   25 -
 src/liblzma/common/vli_decoder.c                   |   29 +-
 src/liblzma/common/vli_encoder.c                   |   23 +-
 src/liblzma/common/vli_size.c                      |   37 +
 src/liblzma/delta/Makefile.am                      |   34 +
 src/liblzma/delta/delta_common.c                   |   66 +
 src/liblzma/delta/delta_common.h                   |   44 +
 src/liblzma/delta/delta_decoder.c                  |   82 ++
 src/liblzma/delta/delta_decoder.h                  |   32 +
 src/liblzma/delta/delta_encoder.c                  |  119 ++
 src/liblzma/delta/delta_encoder.h                  |   30 +
 src/liblzma/lz/Makefile.am                         |   35 +-
 src/liblzma/lz/bt2.c                               |   27 -
 src/liblzma/lz/bt2.h                               |   31 -
 src/liblzma/lz/bt3.c                               |   29 -
 src/liblzma/lz/bt3.h                               |   31 -
 src/liblzma/lz/bt4.c                               |   30 -
 src/liblzma/lz/bt4.h                               |   31 -
 src/liblzma/lz/hc3.c                               |   30 -
 src/liblzma/lz/hc3.h                               |   31 -
 src/liblzma/lz/hc4.c                               |   31 -
 src/liblzma/lz/hc4.h                               |   31 -
 src/liblzma/lz/lz_decoder.c                        |  547 +++-----
 src/liblzma/lz/lz_decoder.h                        |  308 ++---
 src/liblzma/lz/lz_encoder.c                        |  780 ++++++------
 src/liblzma/lz/lz_encoder.h                        |  334 +++--
 src/liblzma/lz/lz_encoder_hash.h                   |  104 ++
 src/liblzma/lz/lz_encoder_mf.c                     |  780 ++++++++++++
 src/liblzma/lz/lz_encoder_private.h                |   40 -
 src/liblzma/lz/match_c.h                           |  412 ------
 src/liblzma/lz/match_h.h                           |   69 --
 src/liblzma/lzma/Makefile.am                       |   37 +-
 src/liblzma/lzma/fastpos.h                         |    8 +-
 src/liblzma/lzma/lzma2_decoder.c                   |  318 +++++
 src/liblzma/lzma/lzma2_decoder.h                   |   35 +
 src/liblzma/lzma/lzma2_encoder.c                   |  406 ++++++
 src/liblzma/lzma/lzma2_encoder.h                   |   34 +
 src/liblzma/lzma/lzma_common.h                     |  208 +++-
 src/liblzma/lzma/lzma_decoder.c                    | 1306 ++++++++++++--------
 src/liblzma/lzma/lzma_decoder.h                    |   21 +-
 src/liblzma/lzma/lzma_encoder.c                    |  576 +++++++--
 src/liblzma/lzma/lzma_encoder.h                    |   38 +-
 src/liblzma/lzma/lzma_encoder_features.c           |    2 +-
 src/liblzma/lzma/lzma_encoder_getoptimum.c         |  925 --------------
 src/liblzma/lzma/lzma_encoder_getoptimumfast.c     |  201 ---
 src/liblzma/lzma/lzma_encoder_init.c               |  228 ----
 src/liblzma/lzma/lzma_encoder_optimum_fast.c       |  193 +++
 src/liblzma/lzma/lzma_encoder_optimum_normal.c     |  875 +++++++++++++
 src/liblzma/lzma/lzma_encoder_presets.c            |   52 +-
 src/liblzma/lzma/lzma_encoder_private.h            |  174 +--
 src/liblzma/lzma/lzma_literal.c                    |   51 -
 src/liblzma/lzma/lzma_literal.h                    |   71 --
 src/liblzma/rangecoder/Makefile.am                 |   10 +-
 src/liblzma/rangecoder/price.h                     |  111 ++
 src/liblzma/rangecoder/price_table.c               |   84 +-
 src/liblzma/rangecoder/price_table_gen.c           |   55 -
 src/liblzma/rangecoder/price_table_init.c          |   33 +-
 src/liblzma/rangecoder/price_tablegen.c            |   56 +
 src/liblzma/rangecoder/range_common.h              |   17 +-
 src/liblzma/rangecoder/range_decoder.h             |  209 ++--
 src/liblzma/rangecoder/range_encoder.h             |   92 +-
 src/liblzma/simple/Makefile.am                     |   12 +
 src/liblzma/simple/simple_coder.c                  |    8 +-
 src/liblzma/simple/simple_decoder.c                |   47 +
 src/liblzma/simple/simple_decoder.h                |   29 +
 src/liblzma/simple/simple_encoder.c                |   45 +
 src/liblzma/simple/simple_encoder.h                |   30 +
 src/liblzma/subblock/Makefile.am                   |    4 +-
 src/liblzma/subblock/subblock_decoder.c            |   20 +-
 src/liblzma/subblock/subblock_decoder_helper.c     |    2 +-
 src/liblzma/subblock/subblock_encoder.c            |   28 +-
 src/lzma/args.c                                    |   35 +-
 src/lzma/args.h                                    |    4 +-
 src/lzma/options.c                                 |   14 +-
 src/lzma/process.c                                 |   88 +-
 src/lzmadec/lzmadec.c                              |  157 +--
 tests/Makefile.am                                  |    1 +
 tests/files/README                                 |  303 ++---
 tests/files/bad-0-backward_size.lzma               |  Bin 0 -> 32 bytes
 tests/files/bad-0-empty-truncated.lzma             |  Bin 0 -> 31 bytes
 tests/files/bad-0-nonempty_index.lzma              |  Bin 0 -> 32 bytes
 tests/files/bad-0cat-alone.lzma                    |  Bin 0 -> 55 bytes
 tests/files/bad-0catpad-empty.lzma                 |  Bin 0 -> 69 bytes
 tests/files/bad-0pad-empty.lzma                    |  Bin 0 -> 37 bytes
 tests/files/bad-1-block_header-1.lzma              |  Bin 0 -> 64 bytes
 tests/files/bad-1-block_header-2.lzma              |  Bin 0 -> 64 bytes
 tests/files/bad-1-block_header-3.lzma              |  Bin 0 -> 68 bytes
 tests/files/bad-1-block_header-4.lzma              |  Bin 0 -> 72 bytes
 tests/files/bad-1-check-crc32.lzma                 |  Bin 0 -> 68 bytes
 tests/files/bad-1-check-crc64.lzma                 |  Bin 0 -> 72 bytes
 tests/files/bad-1-check-sha256.lzma                |  Bin 0 -> 96 bytes
 tests/files/bad-1-lzma2-1.lzma                     |  Bin 0 -> 64 bytes
 tests/files/bad-1-lzma2-2.lzma                     |  Bin 0 -> 424 bytes
 tests/files/bad-1-lzma2-3.lzma                     |  Bin 0 -> 424 bytes
 tests/files/bad-1-lzma2-4.lzma                     |  Bin 0 -> 408 bytes
 tests/files/bad-1-lzma2-5.lzma                     |  Bin 0 -> 408 bytes
 tests/files/bad-1-lzma2-6.lzma                     |  Bin 0 -> 68 bytes
 tests/files/bad-1-lzma2-7.lzma                     |  Bin 0 -> 408 bytes
 tests/files/bad-1-stream_flags-1.lzma              |  Bin 0 -> 68 bytes
 tests/files/bad-1-stream_flags-2.lzma              |  Bin 0 -> 68 bytes
 tests/files/bad-1-stream_flags-3.lzma              |  Bin 0 -> 68 bytes
 tests/files/bad-1-vli-1.lzma                       |  Bin 0 -> 72 bytes
 tests/files/bad-1-vli-2.lzma                       |  Bin 0 -> 72 bytes
 tests/files/bad-2-compressed_data_padding.lzma     |  Bin 0 -> 92 bytes
 tests/files/bad-2-index-1.lzma                     |  Bin 0 -> 92 bytes
 tests/files/bad-2-index-2.lzma                     |  Bin 0 -> 92 bytes
 tests/files/bad-2-index-3.lzma                     |  Bin 0 -> 92 bytes
 tests/files/bad-2-index-4.lzma                     |  Bin 0 -> 92 bytes
 tests/files/bad-cat-single-none-pad_garbage_1.lzma |  Bin 65 -> 0 bytes
 tests/files/bad-cat-single-none-pad_garbage_2.lzma |  Bin 65 -> 0 bytes
 tests/files/bad-cat-single-none-pad_garbage_3.lzma |  Bin 65 -> 0 bytes
 tests/files/bad-multi-none-1.lzma                  |  Bin 54 -> 0 bytes
 tests/files/bad-multi-none-2.lzma                  |  Bin 53 -> 0 bytes
 tests/files/bad-multi-none-3.lzma                  |  Bin 53 -> 0 bytes
 tests/files/bad-multi-none-block_1.lzma            |  Bin 66 -> 0 bytes
 tests/files/bad-multi-none-block_2.lzma            |  Bin 66 -> 0 bytes
 tests/files/bad-multi-none-block_3.lzma            |  Bin 58 -> 0 bytes
 tests/files/bad-multi-none-extra_1.lzma            |  Bin 54 -> 0 bytes
 tests/files/bad-multi-none-extra_2.lzma            |  Bin 54 -> 0 bytes
 tests/files/bad-multi-none-extra_3.lzma            |  Bin 55 -> 0 bytes
 tests/files/bad-multi-none-header_1.lzma           |  Bin 57 -> 0 bytes
 tests/files/bad-multi-none-header_2.lzma           |  Bin 61 -> 0 bytes
 tests/files/bad-multi-none-header_3.lzma           |  Bin 59 -> 0 bytes
 tests/files/bad-multi-none-header_4.lzma           |  Bin 59 -> 0 bytes
 tests/files/bad-multi-none-header_5.lzma           |  Bin 58 -> 0 bytes
 tests/files/bad-multi-none-header_6.lzma           |  Bin 59 -> 0 bytes
 tests/files/bad-multi-none-header_7.lzma           |  Bin 59 -> 0 bytes
 tests/files/bad-multi-none-index_1.lzma            |  Bin 51 -> 0 bytes
 tests/files/bad-multi-none-index_2.lzma            |  Bin 49 -> 0 bytes
 tests/files/bad-multi-none-index_3.lzma            |  Bin 51 -> 0 bytes
 tests/files/bad-multi-none-index_4.lzma            |  Bin 51 -> 0 bytes
 tests/files/bad-single-data_after_eopm_1.lzma      |  Bin 55 -> 0 bytes
 tests/files/bad-single-data_after_eopm_2.lzma      |  Bin 56 -> 0 bytes
 tests/files/bad-single-lzma-flush_beginning.lzma   |  Bin 53 -> 0 bytes
 tests/files/bad-single-lzma-flush_twice.lzma       |  Bin 63 -> 0 bytes
 tests/files/bad-single-none-empty.lzma             |  Bin 19 -> 0 bytes
 .../files/bad-single-none-footer_filter_flags.lzma |  Bin 30 -> 0 bytes
 tests/files/bad-single-none-too_long_vli.lzma      |  Bin 39 -> 0 bytes
 tests/files/bad-single-none-truncated.lzma         |  Bin 29 -> 0 bytes
 tests/files/bad-single-subblock-padding_loop.lzma  |  Bin 43 -> 0 bytes
 tests/files/bad-single-subblock1023-slow.lzma      |  Bin 7886 -> 0 bytes
 tests/files/bad-single-subblock_subblock.lzma      |  Bin 26 -> 0 bytes
 tests/files/good-0-empty.lzma                      |  Bin 0 -> 32 bytes
 tests/files/good-0cat-empty.lzma                   |  Bin 0 -> 64 bytes
 tests/files/good-0catpad-empty.lzma                |  Bin 0 -> 68 bytes
 tests/files/good-0pad-empty.lzma                   |  Bin 0 -> 36 bytes
 tests/files/good-1-3delta-lzma2.lzma               |  Bin 0 -> 528 bytes
 tests/files/good-1-block_header-1.lzma             |  Bin 0 -> 72 bytes
 tests/files/good-1-block_header-2.lzma             |  Bin 0 -> 68 bytes
 tests/files/good-1-block_header-3.lzma             |  Bin 0 -> 68 bytes
 tests/files/good-1-check-crc32.lzma                |  Bin 0 -> 68 bytes
 tests/files/good-1-check-crc64.lzma                |  Bin 0 -> 72 bytes
 tests/files/good-1-check-none.lzma                 |  Bin 0 -> 64 bytes
 tests/files/good-1-check-sha256.lzma               |  Bin 0 -> 96 bytes
 tests/files/good-1-delta-lzma2.tiff.lzma           |  Bin 0 -> 51312 bytes
 tests/files/good-1-lzma2-1.lzma                    |  Bin 0 -> 424 bytes
 tests/files/good-1-lzma2-2.lzma                    |  Bin 0 -> 424 bytes
 tests/files/good-1-lzma2-3.lzma                    |  Bin 0 -> 408 bytes
 tests/files/good-1-sparc-lzma2.lzma                |  Bin 0 -> 2292 bytes
 tests/files/good-1-x86-lzma2.lzma                  |  Bin 0 -> 1936 bytes
 tests/files/good-2-lzma2.lzma                      |  Bin 0 -> 92 bytes
 tests/files/good-cat-single-none-pad.lzma          |  Bin 64 -> 0 bytes
 tests/files/good-multi-none-1.lzma                 |  Bin 75 -> 0 bytes
 tests/files/good-multi-none-2.lzma                 |  Bin 53 -> 0 bytes
 tests/files/good-multi-none-block_1.lzma           |  Bin 66 -> 0 bytes
 tests/files/good-multi-none-block_2.lzma           |  Bin 58 -> 0 bytes
 tests/files/good-multi-none-extra_1.lzma           |  Bin 51 -> 0 bytes
 tests/files/good-multi-none-extra_2.lzma           |  Bin 79 -> 0 bytes
 tests/files/good-multi-none-extra_3.lzma           |  Bin 55 -> 0 bytes
 tests/files/good-multi-none-header_1.lzma          |  Bin 58 -> 0 bytes
 tests/files/good-multi-none-header_2.lzma          |  Bin 66 -> 0 bytes
 tests/files/good-multi-none-header_3.lzma          |  Bin 59 -> 0 bytes
 tests/files/good-single-delta-lzma.tiff.lzma       |  Bin 51409 -> 0 bytes
 tests/files/good-single-lzma-empty.lzma            |  Bin 21 -> 0 bytes
 tests/files/good-single-lzma-flush_1.lzma          |  Bin 48 -> 0 bytes
 tests/files/good-single-lzma-flush_2.lzma          |  Bin 63 -> 0 bytes
 tests/files/good-single-lzma.lzma                  |  Bin 44 -> 0 bytes
 tests/files/good-single-none-empty_1.lzma          |  Bin 18 -> 0 bytes
 tests/files/good-single-none-empty_2.lzma          |  Bin 26 -> 0 bytes
 tests/files/good-single-none-empty_3.lzma          |  Bin 19 -> 0 bytes
 tests/files/good-single-none-pad.lzma              |  Bin 32 -> 0 bytes
 tests/files/good-single-none.lzma                  |  Bin 30 -> 0 bytes
 tests/files/good-single-sparc-lzma.lzma            |  Bin 2263 -> 0 bytes
 tests/files/good-single-subblock-lzma.lzma         |  Bin 50 -> 0 bytes
 tests/files/good-single-subblock_implicit.lzma     |  Bin 35 -> 0 bytes
 tests/files/good-single-subblock_rle.lzma          |  Bin 118 -> 0 bytes
 tests/files/good-single-x86-lzma.lzma              |  Bin 1909 -> 0 bytes
 tests/files/malicious-multi-metadata-64PiB.lzma    |  Bin 51 -> 0 bytes
 tests/files/malicious-single-subblock-256MiB.lzma  |  Bin 30 -> 0 bytes
 tests/files/malicious-single-subblock-64PiB.lzma   |  Bin 45 -> 0 bytes
 tests/files/malicious-single-subblock31-slow.lzma  |  Bin 1233 -> 0 bytes
 tests/files/unsupported-block_header.lzma          |  Bin 0 -> 68 bytes
 tests/files/unsupported-check.lzma                 |  Bin 0 -> 68 bytes
 tests/files/unsupported-filter_flags-1.lzma        |  Bin 0 -> 68 bytes
 tests/files/unsupported-filter_flags-2.lzma        |  Bin 0 -> 68 bytes
 tests/files/unsupported-filter_flags-3.lzma        |  Bin 0 -> 68 bytes
 tests/test_block_header.c                          |   28 +-
 tests/test_compress.sh                             |    4 +-
 tests/test_filter_flags.c                          |   51 +-
 tests/test_stream_flags.c                          |    4 +-
 tests/tests.h                                      |    8 +
 294 files changed, 9768 insertions(+), 8195 deletions(-)

commit 57b9a145a527f0716822615e5ed536d33aebd3fc
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-06-20 17:16:32 +0300

    Fix test_filter_flags to match the new restriction of lc+lp.

 tests/test_filter_flags.c | 3 +++
 1 file changed, 3 insertions(+)

commit eaafc4367c77ec1d910e16d11b4da293969d97a3
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-06-20 16:19:54 +0300

    Remove some redundant code from LZMA encoder.

 src/liblzma/lzma/lzma_encoder.c | 15 +--------------
 1 file changed, 1 insertion(+), 14 deletions(-)

commit 0809c46534fa5664fe35d9e98d95e87312ed130e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-06-19 16:35:08 +0300

    Add limit of lc + lp <= 4. Now we can allocate the
    literal coder as part of the main LZMA encoder or
    decoder structure.
    
    Make the LZMA decoder to rely on the current internal API
    to free the allocated memory in case an error occurs.

 src/liblzma/api/lzma/lzma.h             | 10 +++++-
 src/liblzma/lzma/lzma_decoder.c         | 57 ++++++++-------------------------
 src/liblzma/lzma/lzma_encoder_init.c    | 13 ++++----
 src/liblzma/lzma/lzma_encoder_private.h |  2 +-
 src/liblzma/lzma/lzma_literal.c         | 39 +++++-----------------
 src/liblzma/lzma/lzma_literal.h         | 13 +++-----
 6 files changed, 43 insertions(+), 91 deletions(-)

commit d25ab1b96178f06a0e724f58e3cd68300b2b1275
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-06-18 21:45:19 +0300

    Comments

 src/liblzma/lzma/lzma_encoder.c | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

commit 6368a2fa5901c75864be5171dd57a50af7adbb41
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-06-18 19:19:02 +0300

    Delete old code that was supposed to be already deleted
    from test_block_header.c.

 tests/test_block_header.c | 30 ------------------------------
 1 file changed, 30 deletions(-)

commit 7d17818cec8597f847b0a2537fde991bbc3d9e96
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-06-18 18:02:10 +0300

    Update the code to mostly match the new simpler file format
    specification. Simplify things by removing most of the
    support for known uncompressed size in most places.
    There are some miscellaneous changes here and there too.
    
    The API of liblzma has got many changes and still some
    more will be done soon. While most of the code has been
    updated, some things are not fixed (the command line tool
    will choke with invalid filter chain, if nothing else).
    
    Subblock filter is somewhat broken for now. It will be
    updated once the encoded format of the Subblock filter
    has been decided.

 configure.ac                                   |  41 +-
 debug/full_flush.c                             |  16 +-
 debug/sync_flush.c                             |  15 +-
 src/common/bswap.h                             |  44 ++
 src/common/integer.h                           | 167 +++++
 src/liblzma/api/Makefile.am                    |   5 +-
 src/liblzma/api/lzma.h                         |   9 +-
 src/liblzma/api/lzma/alone.h                   |  32 +-
 src/liblzma/api/lzma/auto.h                    |   7 +-
 src/liblzma/api/lzma/base.h                    |  15 +
 src/liblzma/api/lzma/block.h                   | 306 +++-------
 src/liblzma/api/lzma/check.h                   |  18 +-
 src/liblzma/api/lzma/copy.h                    |  29 -
 src/liblzma/api/lzma/easy.h                    |  61 +-
 src/liblzma/api/lzma/extra.h                   | 114 ----
 src/liblzma/api/lzma/filter.h                  |   5 +-
 src/liblzma/api/lzma/index.h                   | 204 ++++++-
 src/liblzma/api/lzma/index_hash.h              |  94 +++
 src/liblzma/api/lzma/info.h                    | 315 ----------
 src/liblzma/api/lzma/lzma.h                    |   2 +-
 src/liblzma/api/lzma/metadata.h                | 100 ---
 src/liblzma/api/lzma/raw.h                     |  20 +-
 src/liblzma/api/lzma/stream.h                  | 157 +----
 src/liblzma/api/lzma/stream_flags.h            | 146 +++--
 src/liblzma/api/lzma/version.h                 |   2 +-
 src/liblzma/api/lzma/vli.h                     |  83 ++-
 src/liblzma/check/Makefile.am                  |   1 -
 src/liblzma/check/check.c                      |  55 +-
 src/liblzma/check/check.h                      |  47 +-
 src/liblzma/check/check_byteswap.h             |  43 --
 src/liblzma/check/crc32_init.c                 |   2 +-
 src/liblzma/check/crc64_init.c                 |   2 +-
 src/liblzma/check/crc_macros.h                 |   2 +-
 src/liblzma/check/sha256.c                     |  53 +-
 src/liblzma/common/Makefile.am                 |  31 +-
 src/liblzma/common/alignment.c                 |   5 +-
 src/liblzma/common/alone_decoder.c             |  77 +--
 src/liblzma/common/alone_encoder.c             |  99 ++-
 src/liblzma/common/auto_decoder.c              |  18 +-
 src/liblzma/common/block_decoder.c             | 298 +++------
 src/liblzma/common/block_encoder.c             | 228 ++-----
 src/liblzma/common/block_header_decoder.c      | 400 +++---------
 src/liblzma/common/block_header_encoder.c      | 207 +++----
 src/liblzma/common/block_private.h             |  51 +-
 src/liblzma/common/block_util.c                |  73 +++
 src/liblzma/common/common.h                    |  44 +-
 src/liblzma/common/copy_coder.c                | 144 -----
 src/liblzma/common/copy_coder.h                |  31 -
 src/liblzma/common/delta_common.c              |   4 -
 src/liblzma/common/delta_common.h              |   4 -
 src/liblzma/common/delta_decoder.c             |  55 +-
 src/liblzma/common/delta_encoder.c             |   7 +-
 src/liblzma/common/easy.c                      | 122 ++++
 src/liblzma/common/easy_common.c               |  54 --
 src/liblzma/common/easy_common.h               |  28 -
 src/liblzma/common/easy_multi.c                | 103 ----
 src/liblzma/common/easy_single.c               |  37 --
 src/liblzma/common/extra.c                     |  34 --
 src/liblzma/common/features.c                  |   4 -
 src/liblzma/common/filter_flags_decoder.c      | 384 ++++--------
 src/liblzma/common/filter_flags_encoder.c      | 120 +---
 src/liblzma/common/index.c                     | 773 ++++++++++++++++++++---
 src/liblzma/common/index.h                     |  67 ++
 src/liblzma/common/index_decoder.c             | 252 ++++++++
 src/liblzma/common/index_encoder.c             | 222 +++++++
 src/liblzma/common/index_encoder.h             |  30 +
 src/liblzma/common/index_hash.c                | 340 +++++++++++
 src/liblzma/common/info.c                      | 814 -------------------------
 src/liblzma/common/memory_usage.c              |   1 -
 src/liblzma/common/metadata_decoder.c          | 578 ------------------
 src/liblzma/common/metadata_decoder.h          |  31 -
 src/liblzma/common/metadata_encoder.c          | 435 -------------
 src/liblzma/common/metadata_encoder.h          |  30 -
 src/liblzma/common/raw_common.c                | 178 ++----
 src/liblzma/common/raw_common.h                |   5 +-
 src/liblzma/common/raw_decoder.c               |  19 +-
 src/liblzma/common/raw_decoder.h               |   3 +-
 src/liblzma/common/raw_encoder.c               | 101 +--
 src/liblzma/common/raw_encoder.h               |   3 +-
 src/liblzma/common/stream_common.h             |   3 +
 src/liblzma/common/stream_decoder.c            | 458 +++++---------
 src/liblzma/common/stream_decoder.h            |  28 +
 src/liblzma/common/stream_encoder.c            | 282 +++++++++
 src/liblzma/common/stream_encoder.h            |  30 +
 src/liblzma/common/stream_encoder_multi.c      | 445 --------------
 src/liblzma/common/stream_encoder_multi.h      |  26 -
 src/liblzma/common/stream_encoder_single.c     | 219 -------
 src/liblzma/common/stream_flags_decoder.c      | 260 ++------
 src/liblzma/common/stream_flags_encoder.c      |  56 +-
 src/liblzma/common/stream_flags_equal.c        |  36 ++
 src/liblzma/common/vli_decoder.c               |  68 ++-
 src/liblzma/common/vli_encoder.c               |  59 +-
 src/liblzma/common/vli_reverse_decoder.c       |  55 --
 src/liblzma/lz/lz_decoder.c                    |   6 +-
 src/liblzma/lz/lz_decoder.h                    |  10 +-
 src/liblzma/lzma/lzma_decoder.c                |  13 +-
 src/liblzma/lzma/lzma_decoder.h                |  10 +-
 src/liblzma/simple/simple_coder.c              |  29 +-
 src/liblzma/simple/simple_private.h            |   4 -
 src/liblzma/subblock/subblock_decoder.c        | 106 +---
 src/liblzma/subblock/subblock_decoder_helper.c |   5 +-
 src/liblzma/subblock/subblock_encoder.c        |   8 +-
 src/lzma/args.c                                |  22 +-
 src/lzma/args.h                                |   2 -
 src/lzma/error.c                               |   6 +
 src/lzma/process.c                             |  26 +-
 src/lzmadec/lzmadec.c                          |   8 +-
 tests/Makefile.am                              |   5 +-
 tests/test_block_header.c                      | 411 +++++--------
 tests/test_compress.sh                         |  65 +-
 tests/test_filter_flags.c                      | 116 ++--
 tests/test_index.c                             | 504 ++++++++++++++-
 tests/test_info.c                              | 717 ----------------------
 tests/test_stream_flags.c                      | 134 ++--
 tests/tests.h                                  |  14 +-
 115 files changed, 4846 insertions(+), 8156 deletions(-)

commit bf6348d1a3ff09fdc06940468f318f75ffa6af11
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-06-17 15:03:46 +0300

    Update the file format specification draft. The new one is
    a lot simpler than the previous versions, but it also means
    that the existing code will change a lot.

 doc/file-format.txt | 1794 +++++++++++++++------------------------------------
 1 file changed, 508 insertions(+), 1286 deletions(-)

commit 803194ddd26f01ff60ba4e9924c6087a56b29827
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-06-11 21:42:47 +0300

    Fix uninitialized variable in LZMA encoder. This was
    introduced in 369f72fd656f537a9a8e06f13e6d0d4c242be22f.

 src/liblzma/lzma/lzma_encoder_init.c | 2 ++
 1 file changed, 2 insertions(+)

commit 0ea98e52ba87453497b1355c51f13bad55c8924a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-06-11 15:08:44 +0300

    Improve command line integer parsing a little in lzma and
    lzmadec to make them accept also KiB in addition Ki etc.
    Fix also memory usage information in lzmadec --help.

 src/lzma/util.c       | 23 ++++++++++++++---------
 src/lzmadec/lzmadec.c | 31 ++++++++++++++++++-------------
 2 files changed, 32 insertions(+), 22 deletions(-)

commit 436fa5fae96d4e35759aed33066060f09ee8c6ef
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-06-10 20:36:12 +0300

    s/decompressed/compressed/ in the command line tool's
    error message.

 src/lzma/main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 369f72fd656f537a9a8e06f13e6d0d4c242be22f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-06-01 12:48:17 +0300

    Fix a buffer overflow in the LZMA encoder. It was due to my
    misunderstanding of the code. There's no tiny fix for this
    problem, so I also cleaned up the code in general.
    
    This reduces the speed of the encoder 2-5 % in the fastest
    compression mode ("lzma -1"). High compression modes should
    have no noticeable performance difference.
    
    This commit breaks things (especially LZMA_SYNC_FLUSH) but I
    will fix them once the new format and LZMA2 has been roughly
    implemented. Plain LZMA won't support LZMA_SYNC_FLUSH at all
    and won't be supported in the new .lzma format. This may
    change still but this is what it looks like now.
    
    Support for known uncompressed size (that is, LZMA or LZMA2
    without EOPM) is likely to go away. This means there will
    be API changes.

 src/liblzma/lz/lz_encoder.c                    | 113 +----
 src/liblzma/lz/lz_encoder.h                    |  18 +-
 src/liblzma/lzma/lzma_encoder.c                | 551 ++++++++++++-------------
 src/liblzma/lzma/lzma_encoder_getoptimum.c     |  59 ++-
 src/liblzma/lzma/lzma_encoder_getoptimumfast.c |   4 +-
 src/liblzma/lzma/lzma_encoder_init.c           |   9 +-
 src/liblzma/lzma/lzma_encoder_private.h        |  15 +-
 src/liblzma/rangecoder/range_encoder.h         | 383 +++++++++--------
 8 files changed, 532 insertions(+), 620 deletions(-)

commit e55e0e873ce2511325749d415ae547d62ab5f00d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-05-30 11:53:41 +0300

    Typo fixes from meyering.

 doc/faq.txt              | 4 ++--
 doc/liblzma-advanced.txt | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

commit ed6664146fcbe9cc4a3b23b31632182ed812ea93
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-05-11 14:24:42 +0300

    Remove support for pre-C89 libc versions that lack memcpy,
    memmove, and memset.

 configure.ac                   |  2 +-
 src/common/sysdefs.h           | 15 ++-------------
 src/liblzma/common/allocator.c |  2 +-
 3 files changed, 4 insertions(+), 15 deletions(-)

commit b09464bf9ae694afc2d1dc26188ac4e2e8af0a63
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-05-11 14:17:21 +0300

    Improved C99 compiler detection in configure.ac. It will
    pass -std=gnu99 instead of -std=c99 to GCC now, but -pedantic
    should still give warnings about GNU extensions like before
    except with some special keywords like asm().

 configure.ac | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

commit 11de5d5267f7a0a7f0a4d34eec147e65eaf9f9cf
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-05-06 15:15:07 +0300

    Bunch of grammar fixes from meyering.

 doc/liblzma-security.txt        | 8 ++++----
 src/liblzma/api/lzma/memlimit.h | 6 +++---
 src/lzma/help.c                 | 2 +-
 tests/files/README              | 2 +-
 4 files changed, 9 insertions(+), 9 deletions(-)

commit dc192b6343ae36276c85fcf7ef6006147816eadc
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-05-06 13:41:05 +0300

    Typo fix

 src/liblzma/api/lzma/init.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 944b62b93239b27b338d117f2668c0e95849659b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-05-04 22:29:27 +0300

    Don't print an error message on broken pipe unless --verbose
    is used.

 src/lzma/io.c | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)

commit 8e074349e47ea6832b8fdf9244e581d453733433
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-04-30 22:16:17 +0300

    Fix a crash with --format=alone if other filters than LZMA
    are specified on the command line.

 src/lzma/args.c | 9 +++++++++
 1 file changed, 9 insertions(+)

commit 2f361ac19b7fd3abcd362de4d470e6a9eb495b73
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-04-28 17:08:27 +0300

    Updated THANKS.

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

commit 3be21fb12f4cec2cf07799e8960382f4cb375369
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-04-28 17:06:34 +0300

    Fixed wrong spelling "limitter" to "limiter". This affects
    liblzma's API.

 doc/liblzma-security.txt             |  14 +-
 src/liblzma/api/lzma/base.h          |   4 +-
 src/liblzma/api/lzma/memlimit.h      |  10 +-
 src/liblzma/api/lzma/stream.h        |   4 +-
 src/liblzma/common/Makefile.am       |   2 +-
 src/liblzma/common/memory_limiter.c  | 288 +++++++++++++++++++++++++++++++++++
 src/liblzma/common/memory_limitter.c | 288 -----------------------------------
 src/lzma/list.c                      |   6 +-
 src/lzmadec/lzmadec.c                |  12 +-
 tests/test_memlimit.c                |   4 +-
 10 files changed, 316 insertions(+), 316 deletions(-)

commit beeb81060821dfec4e7898e0d44b7900dcb2215e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-04-25 15:39:50 +0300

    Prevent LZ encoder from hanging with known uncompressed
    size. The "fix" breaks LZMA_SYNC_FLUSH at end of stream
    with known uncompressed size, but since it currently seems
    likely that support for encoding with known uncompressed
    size will go away anyway, I'm not fixing this problem now.

 src/liblzma/lz/lz_encoder.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

commit c324325f9f13cdeb92153c5d00962341ba070ca2
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-04-25 13:58:56 +0300

    Removed src/liblzma/common/sysdefs.h symlink, which was
    annoying, because "make dist" put two copies of sysdefs.h
    into the tarball instead of the symlink.

 src/liblzma/check/crc32_table.c | 2 +-
 src/liblzma/check/crc64_table.c | 2 +-
 src/liblzma/common/Makefile.am  | 1 -
 src/liblzma/common/common.h     | 2 +-
 src/liblzma/common/sysdefs.h    | 1 -
 5 files changed, 3 insertions(+), 5 deletions(-)

commit d3ba30243c75c13d094de1793f9c58acdbacc692
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-04-25 13:41:29 +0300

    Added memusage.c to debug directory.

 debug/Makefile.am |  3 ++-
 debug/memusage.c  | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 57 insertions(+), 1 deletion(-)

commit 8f804c29aa8471ccd6438ddca254092b8869ca52
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-04-25 13:32:35 +0300

    Bumped version number to 4.999.3alpha. It will become 5.0.0
    once we have a stable release (won't be very soon). The
    version number is no longer related to version of LZMA SDK.
    
    Made some small Automake-related changes to toplevel
    Makefile.am and configure.ac.

 Makefile.am                    |  7 +++++--
 README                         | 29 +++++++++++++++++++++++++++++
 configure.ac                   |  4 ++--
 src/liblzma/api/lzma/version.h | 22 ++++++++++------------
 4 files changed, 46 insertions(+), 16 deletions(-)

commit c99037ea10f121cbacf60c37a36c29768ae53447
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-04-24 20:25:39 +0300

    Fix a memory leak by calling free(extra->data) in
    lzma_extra_free().

 src/liblzma/common/extra.c | 1 +
 1 file changed, 1 insertion(+)

commit 22ba3b0b5043fa481903482ce85015fe775939e5
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-04-24 20:23:05 +0300

    Make unlzma and lzcat symlinks.

 src/lzma/Makefile.am | 12 ++++++++++++
 1 file changed, 12 insertions(+)

commit 17c36422d4cbc2c70d5c83ec389406f92cd9e85e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-04-24 20:20:27 +0300

    Fixed a bug in command line option parsing.

 src/lzma/options.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 283f939974c32c47f05d495e8dea455ec646ed64
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-04-24 20:19:20 +0300

    Added two assert()s.

 src/liblzma/lzma/lzma_encoder.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit eb348a60b6e19a7c093f892434f23c4756973ffd
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-04-24 19:22:53 +0300

    Switch to uint16_t as the type of range coder probabilities.

 src/liblzma/rangecoder/range_common.h | 25 +++++++++++++++++++------
 1 file changed, 19 insertions(+), 6 deletions(-)

commit 6c5306e312bcfd254cf654f88c04e34ba786df3d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-04-24 18:39:57 +0300

    Fix wrong return type (uint32_t -> bool).

 src/liblzma/lz/lz_encoder.c | 2 +-
 src/liblzma/lz/lz_encoder.h | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 712cfe3ebfd24df24d8896b1315c53c3bc4369c8
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-04-24 18:38:00 +0300

    Fix data corruption in LZ encoder with LZMA_SYNC_FLUSH.

 src/liblzma/lz/lz_encoder.c | 16 ++++++++++++++++
 src/liblzma/lz/lz_encoder.h |  4 ++++
 src/liblzma/lz/match_c.h    | 23 ++++++++++++++++++-----
 3 files changed, 38 insertions(+), 5 deletions(-)

commit bc04486e368d20b3027cde625267762aae063965
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-04-24 17:33:01 +0300

    Fix fastpos problem in Makefile.am when built with --enable-small.

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

commit 7ab493924e0ed590a5121a15ee54038d238880d3
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-04-24 17:30:51 +0300

    Use 64-bit integer as range encoder's cache size. This fixes a
    theoretical data corruption, which should be very hard to trigger
    even intentionally.

 src/liblzma/rangecoder/range_encoder.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 641998c3e1ecc8b598fe0eb051fab8b9535c291b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-03-24 16:38:40 +0200

    Replaced the range decoder optimization that used arithmetic
    right shift with as fast version that doesn't need
    arithmetic right shift. Removed the related check from
    configure.ac.

 configure.ac                           |  1 -
 m4/ax_c_arithmetic_rshift.m4           | 36 -----------------------
 src/liblzma/rangecoder/range_decoder.h | 53 ++++++++++------------------------
 3 files changed, 16 insertions(+), 74 deletions(-)

commit ad999efd279d95f1e7ac555b14170e8e9020488c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-03-22 14:39:34 +0200

    Take advantage of arithmetic right shift in range decoder.

 src/liblzma/rangecoder/range_decoder.h | 52 ++++++++++++++++++++++++----------
 1 file changed, 37 insertions(+), 15 deletions(-)

commit 03e0e8a0d7228b6ff1f0af39e2c040a4e425973d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-03-22 14:18:29 +0200

    Added autoconf check to detect if we can use arithmetic
    right shift for optimizations.

 configure.ac                 |  1 +
 m4/ax_c_arithmetic_rshift.m4 | 36 ++++++++++++++++++++++++++++++++++++
 2 files changed, 37 insertions(+)

commit 7521bbdc83acab834594a22bec50c8e1bd836298
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-03-22 01:26:36 +0200

    Update a comment to use the variable name rep_len_decoder.
    
    (And BTW, the previous commit actually did change the
    program logic slightly.)

 src/liblzma/lzma/lzma_decoder.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 63b74d000eedaebb8485f623e56864ff5ab71064
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-03-22 00:57:33 +0200

    Demystified the "state" variable in LZMA code. Use the
    word literal instead of char for better consistency.
    There are still some names with _char instead of _literal
    in lzma_optimum, these may be changed later.
    
    Renamed length coder variables.
    
    This commit doesn't change the program logic.

 src/liblzma/lzma/lzma_common.h             | 69 ++++++++++++++++++++++--------
 src/liblzma/lzma/lzma_decoder.c            | 47 ++++++++++----------
 src/liblzma/lzma/lzma_encoder.c            | 14 +++---
 src/liblzma/lzma/lzma_encoder_getoptimum.c | 34 +++++++--------
 src/liblzma/lzma/lzma_encoder_init.c       |  5 ++-
 src/liblzma/lzma/lzma_encoder_private.h    |  8 ++--
 6 files changed, 107 insertions(+), 70 deletions(-)

commit e6eb0a26757e851cef62b9440319a8e73b015cb9
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-03-14 23:16:11 +0200

    Fix data corruption in LZMA encoder. Note that this bug was
    specific to liblzma and was *not* present in LZMA SDK.

 src/liblzma/lzma/lzma_encoder.c | 4 ++++
 1 file changed, 4 insertions(+)

commit 7d516f5129e4373a6d57249d7f608c634c66bf12
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-03-14 21:32:37 +0200

    Fix a comment API header.

 src/liblzma/api/lzma/lzma.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 748d6e4274921a350bd0a317380309717441ef9c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-03-12 23:14:50 +0200

    Make lzma_stream.next_in const. Let's see if anyone complains.

 src/liblzma/api/lzma/base.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit bfde3b24a5ae25ce53c854762b6148952386b025
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-03-11 15:35:34 +0200

    Apply a minor speed optimization to LZMA decoder.

 src/liblzma/lzma/lzma_decoder.c | 85 +++++++++++++++++++++--------------------
 1 file changed, 43 insertions(+), 42 deletions(-)

commit f310c50286d9e4e9c6170bb65348c9bb430a65b4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-03-11 15:17:16 +0200

    Initialize the last byte of the dictionary to zero so that
    lz_get_byte(lz, 0) returns zero. This was broken by
    1a3b21859818e4d8e89a1da99699233c1bfd197d.

 src/liblzma/lz/lz_decoder.c | 1 +
 1 file changed, 1 insertion(+)

commit 5ead36cf7f823093672a4e43c3180b38c9abbaff
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-03-10 15:57:55 +0200

    Really fix the price count initialization.

 src/liblzma/lzma/lzma_encoder_init.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit d4d7feb83d1a1ded8f662a82e21e053841ca726c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-03-10 13:47:17 +0200

    Updated THANKS.

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

commit 0541c5ea63ef3c0ff85eeddb0a420e56b0c65258
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-03-10 13:46:48 +0200

    Initialize align_price_count and match_price_count in
    lzma_encoder_init.c. While we don't call
    fill_distances_prices() and fill_align_prices() in
    lzma_lzma_encoder_init(), we still need to initialize
    these two variables so that the fill functions get
    called in lzma_encoder_getoptimum.c in the beginning
    of a stream.

 src/liblzma/lzma/lzma_encoder_init.c | 2 ++
 1 file changed, 2 insertions(+)

commit 596fa1fac72823e4ef5bc26bb53f9090445bf748
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-03-10 13:44:29 +0200

    Always initialize lz->temp_size in lz_decoder.c. temp_size did
    get initialized as a side-effect after allocating a new decoder,
    but not when the decoder was reused.

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

commit 45e43e169527e7a98a8c8a821d37bf25822b764d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-03-10 13:41:25 +0200

    Don't fill allocated memory with 0xFD when debugging is
    enabled. It hides errors from Valgrind.

 src/liblzma/common/allocator.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit c0e19e0662205f81a86da8903cdc325d50635870
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-02-28 10:24:31 +0200

    Remove two redundant validity checks from the LZMA decoder.
    These are already checked elsewhere, so omitting these
    gives (very) tiny speed up.

 src/liblzma/lzma/lzma_decoder.c | 23 ++++-------------------
 1 file changed, 4 insertions(+), 19 deletions(-)

commit de7485806284d1614095ae8cb2ebbb5d74c9ac45
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-02-06 13:25:32 +0200

    Tiny clean up to file-format.txt.

 doc/file-format.txt | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 1a3b21859818e4d8e89a1da99699233c1bfd197d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-02-02 14:51:06 +0200

    Don't memzero() the history buffer when initializing LZ
    decoder. There's no danger of information leak here, so
    it isn't required. Doing memzero() takes a lot of time
    with large dictionaries, which could make it easier to
    construct DoS attack to consume too much CPU time.

 src/liblzma/lz/lz_decoder.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

commit 7e796e312bf644ea95aea0ff85480f47cfa30fc0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-02-01 08:39:26 +0200

    Do uncompressed size validation in raw encoder. This way
    it gets done for not only raw encoder, but also Block
    and LZMA_Alone encoders.

 src/liblzma/common/raw_encoder.c | 90 ++++++++++++++++++++++++++++++++--------
 1 file changed, 73 insertions(+), 17 deletions(-)

commit 7dd48578a3853e0cfab9f1830bc30927173ec4bc
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-02-01 08:32:05 +0200

    Avoid unneeded function call in raw_common.c.

 src/liblzma/common/raw_common.c | 20 +++++++++++---------
 1 file changed, 11 insertions(+), 9 deletions(-)

commit b596fac963c3ff96f615d4d9b427a213ec341211
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-26 21:42:38 +0200

    Updated THANKS.

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

commit e9f6e9c075ad93141a568d94f7d4eb0f2edbd6c2
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-26 21:40:23 +0200

    Added note.GNU-stack to x86 assembler files. It is needed
    when using non-executable stack.

 src/liblzma/check/crc32_x86.S | 9 +++++++++
 src/liblzma/check/crc64_x86.S | 9 +++++++++
 2 files changed, 18 insertions(+)

commit 4c7ad179c78f97f68ad548cb40a9dfa6871655ae
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-26 19:12:50 +0200

    Added api/lzma/easy.h. I had forgot to add this to the
    git repo. Thanks to Stephan Kulow.

 src/liblzma/api/lzma/easy.h | 174 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 174 insertions(+)

commit 288b232f54c3692cd36f471d4042f51daf3ea79f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-26 11:09:17 +0200

    Added more test files.

 tests/files/README                       |  11 +++++++++++
 tests/files/bad-multi-none-header_7.lzma | Bin 0 -> 59 bytes
 tests/files/good-single-sparc-lzma.lzma  | Bin 0 -> 2263 bytes
 tests/files/good-single-x86-lzma.lzma    | Bin 0 -> 1909 bytes
 4 files changed, 11 insertions(+)

commit c467b0defccf233d0c79234407bc38d7d09574d3
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-26 10:47:55 +0200

    Added more test files.

 tests/files/README                       |   6 ++++++
 tests/files/bad-multi-none-block_3.lzma  | Bin 0 -> 58 bytes
 tests/files/good-multi-none-block_2.lzma | Bin 0 -> 58 bytes
 3 files changed, 6 insertions(+)

commit f9842f712732c482f2def9f24437851e57dd83f8
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-26 00:25:34 +0200

    Return LZMA_HEADER_ERROR if LZMA_SYNC_FLUSH is used with any
    of the so called simple filters. If there is demand, limited
    support for LZMA_SYNC_FLUSH may be added in future.
    
    After this commit, using LZMA_SYNC_FLUSH shouldn't cause
    undefined behavior in any situation.

 src/liblzma/api/lzma/simple.h     | 9 +++++++++
 src/liblzma/simple/simple_coder.c | 8 ++++++++
 2 files changed, 17 insertions(+)

commit e988ea1d1a286dd0f27af0657f9665d5cd8573aa
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-25 23:50:35 +0200

    Added more Multi-Block test files. Improved some
    descriptions in the test files' README.

 tests/files/README                       |  34 +++++++++++++++++++++++++------
 tests/files/bad-multi-none-block_1.lzma  | Bin 0 -> 66 bytes
 tests/files/bad-multi-none-block_2.lzma  | Bin 0 -> 66 bytes
 tests/files/good-multi-none-block_1.lzma | Bin 0 -> 66 bytes
 4 files changed, 28 insertions(+), 6 deletions(-)

commit 4441e004185cd4c61bda184010eca5924c9dec87
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-25 23:12:36 +0200

    Combine lzma_options_block validation needed by both Block
    encoder and decoder, and put the shared things to
    block_private.h. Improved the checks a little so that
    they may detect too big Compressed Size at initialization
    time if lzma_options_block.total_size or .total_limit is
    known.
    
    Allow encoding and decoding Blocks with combinations of
    fields that are not allowed by the file format specification.
    Doing this requires that the application passes such a
    combination in lzma_options_lzma; liblzma doesn't do that,
    but it's not impossible that someone could find them useful
    in some custom file format.

 src/liblzma/common/block_decoder.c | 37 ++++++++++++----------------
 src/liblzma/common/block_encoder.c | 32 +++++-------------------
 src/liblzma/common/block_private.h | 50 ++++++++++++++++++++++++++++++++++++++
 3 files changed, 71 insertions(+), 48 deletions(-)

commit bf4200c818fcf9102e56328d39cde91bfa13cfb6
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-25 19:21:22 +0200

    Added test_memlimit.c.

 tests/Makefile.am     |   2 +
 tests/test_memlimit.c | 114 ++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 116 insertions(+)

commit 7b8fc7e6b501a32a36636dac79ecb57099269005
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-25 19:20:28 +0200

    Improved the memory limitter:
      - Added lzma_memlimit_max() and lzma_memlimit_reached()
        API functions.
      - Added simple estimation of malloc()'s memory usage
        overhead.
      - Fixed integer overflow detection in lzma_memlimit_alloc().
      - Made some white space cleanups and added more comments.
    
    The description of lzma_memlimit_max() in memlimit.h is bad
    and should be improved.

 src/liblzma/api/lzma/memlimit.h      | 35 +++++++++++++
 src/liblzma/common/memory_limitter.c | 97 ++++++++++++++++++++++++++++++------
 2 files changed, 118 insertions(+), 14 deletions(-)

commit e0c3d0043da2f670cfdb1abbb3223d5a594ad8db
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-25 13:55:52 +0200

    Use more parenthesis in succeed() macro in tests/tests.h.

 tests/tests.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1fd76d488179580d37f31ee11948f4932aed31fd
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-24 14:49:34 +0200

    Added more Multi-Block Stream test files.

 tests/files/README                        |  23 +++++++++++++++++++++++
 tests/files/bad-multi-none-header_2.lzma  | Bin 0 -> 61 bytes
 tests/files/bad-multi-none-header_3.lzma  | Bin 0 -> 59 bytes
 tests/files/bad-multi-none-header_4.lzma  | Bin 0 -> 59 bytes
 tests/files/bad-multi-none-header_5.lzma  | Bin 0 -> 58 bytes
 tests/files/bad-multi-none-header_6.lzma  | Bin 0 -> 59 bytes
 tests/files/good-multi-none-header_3.lzma | Bin 0 -> 59 bytes
 7 files changed, 23 insertions(+)

commit 6e27b1098a28f4ce09bfa6df68ad94182dfc2936
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-24 00:46:05 +0200

    Added bunch of test files containing Multi-Block Streams.

 tests/files/README                        |  53 ++++++++++++++++++++++++++++++
 tests/files/bad-multi-none-1.lzma         | Bin 0 -> 54 bytes
 tests/files/bad-multi-none-2.lzma         | Bin 0 -> 53 bytes
 tests/files/bad-multi-none-3.lzma         | Bin 0 -> 53 bytes
 tests/files/bad-multi-none-extra_1.lzma   | Bin 0 -> 54 bytes
 tests/files/bad-multi-none-extra_2.lzma   | Bin 0 -> 54 bytes
 tests/files/bad-multi-none-extra_3.lzma   | Bin 0 -> 55 bytes
 tests/files/bad-multi-none-header_1.lzma  | Bin 0 -> 57 bytes
 tests/files/bad-multi-none-index_1.lzma   | Bin 0 -> 51 bytes
 tests/files/bad-multi-none-index_2.lzma   | Bin 0 -> 49 bytes
 tests/files/bad-multi-none-index_3.lzma   | Bin 0 -> 51 bytes
 tests/files/bad-multi-none-index_4.lzma   | Bin 0 -> 51 bytes
 tests/files/good-multi-none-1.lzma        | Bin 0 -> 75 bytes
 tests/files/good-multi-none-2.lzma        | Bin 0 -> 53 bytes
 tests/files/good-multi-none-extra_1.lzma  | Bin 0 -> 51 bytes
 tests/files/good-multi-none-extra_2.lzma  | Bin 0 -> 79 bytes
 tests/files/good-multi-none-extra_3.lzma  | Bin 0 -> 55 bytes
 tests/files/good-multi-none-header_1.lzma | Bin 0 -> 58 bytes
 tests/files/good-multi-none-header_2.lzma | Bin 0 -> 66 bytes
 19 files changed, 53 insertions(+)

commit db9df0a9609c01a00a227329fb96e983971040f5
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-23 23:43:00 +0200

    Fix decoding of empty Metadata Blocks, that don't have
    even the Metadata Flags field. Earlier the code allowed
    such files; now they are prohibited as the file format
    specification requires.

 src/liblzma/common/metadata_decoder.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 765f0b05f6e95ed9194fb90819cee189ebbac36b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-23 23:38:18 +0200

    Fix a bug related to 99e12af4e2b866c011fe0106cd1e0bfdcc8fe9c6.
    lzma_metadata.header_metadata_size was not properly set to
    zero if the Metadata had only the Metadata Flags field.

 src/liblzma/common/metadata_decoder.c | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

commit 3a7cc5c3dec7b078941f961b0393b86c418883b6
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-23 23:35:49 +0200

    Fix decoding of Extra Records that have empty Data.

 src/liblzma/common/metadata_decoder.c | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

commit e5fdec93e273855c1bcc2579b83cfb481a9a1492
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-23 22:02:38 +0200

    Add the trailing '\0' to lzma_extra.data as the API header
    already documents.

 src/liblzma/common/metadata_decoder.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit ed40dc5a2c28a8dfccab8c165b3780738eeef93e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-23 21:21:21 +0200

    Added debug/full_flush.c.

 debug/Makefile.am  |   3 +-
 debug/full_flush.c | 105 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 107 insertions(+), 1 deletion(-)

commit ae0cd09a666a1682da8fc09487322227679e218d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-23 21:05:33 +0200

    Return LZMA_STREAM_END instead of LZMA_OK if
    LZMA_SYNC_FLUSH or LZMA_FULL_FLUSH is used when
    there's no unfinished Block open.

 src/liblzma/common/stream_encoder_multi.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 0e80ded13dfceb98f9494cbb5381a95eb44d03db
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-23 20:05:01 +0200

    Added bad-single-none-footer_filter_flags.lzma and
    bad-single-none-too_long_vli.lzma.

 tests/files/README                                   |   5 +++++
 tests/files/bad-single-none-footer_filter_flags.lzma | Bin 0 -> 30 bytes
 tests/files/bad-single-none-too_long_vli.lzma        | Bin 0 -> 39 bytes
 3 files changed, 5 insertions(+)

commit 8c8eb14055d8dd536b1b1c58fb284d34bb8ed1dd
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-23 13:42:35 +0200

    Fixed a typo.

 src/liblzma/subblock/subblock_decoder_helper.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 980f65a9a10160c4d105767871e3002b9aaba3e0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-23 13:40:45 +0200

    Fix a memory leak in the Subblock encoder.

 src/liblzma/subblock/subblock_encoder.c | 1 +
 1 file changed, 1 insertion(+)

commit 99e12af4e2b866c011fe0106cd1e0bfdcc8fe9c6
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-23 13:36:07 +0200

    Fix Size of Header Metadata Block handling. Now
    lzma_metadata.header_metadata_size == LZMA_VLI_VALUE_UNKNOWN
    is not allowed at all. To indicate missing Header Metadata
    Block, header_metadata_size must be set to zero. This is
    what Metadata decoder does after this patch too.
    
    Note that other missing fields in lzma_metadata are still
    indicated with LZMA_VLI_VALUE_UNKNOWN. This isn't as
    illogical as it sounds at first, because missing Size of
    Header Metadata Block means that Header Metadata Block is
    not present in the Stream. With other Metadata fields,
    a missing field means only that the value is unknown.

 src/liblzma/common/info.c             | 13 ++++---------
 src/liblzma/common/metadata_decoder.c |  6 ++++++
 src/liblzma/common/metadata_encoder.c | 11 +++++------
 tests/test_info.c                     |  4 ++--
 4 files changed, 17 insertions(+), 17 deletions(-)

commit 58b78ab20c1bcced45cf71ae6684868fc90b4b81
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-23 13:15:55 +0200

    Fix a memory leak in metadata_decoder.c.

 src/liblzma/common/metadata_decoder.c | 1 +
 1 file changed, 1 insertion(+)

commit 4d8cdbdab44400fd98f0f18a0f701e27cd1acdae
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-23 13:13:58 +0200

    Fix the fix 863028cb7ad6d8d0455fa69348f56b376d7b908f which
    just moved to problem. Now it's really fixed.

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

commit 67321de963ccf69410b3868b8e31534fe18a90de
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-23 00:21:04 +0200

    Take advantage of return_if_error() macro in
    lzma_info_metadata_set() in info.c.

 src/liblzma/common/info.c | 24 ++++++++----------------
 1 file changed, 8 insertions(+), 16 deletions(-)

commit 863028cb7ad6d8d0455fa69348f56b376d7b908f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-23 00:18:32 +0200

    Fixed a dangling pointer that caused invalid free().

 src/liblzma/common/info.c | 1 +
 1 file changed, 1 insertion(+)

commit cf49f42a6bd40143f54a6b10d6e605599e958c0b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-22 22:49:24 +0200

    Added lzma_easy_* functions. These should make using
    liblzma as easy as using zlib, because the easy API
    don't require developers to know any fancy LZMA options.
    
    Note that Multi-Block Stream encoding is currently broken.
    The easy API should be OK, the bug(s) are elsewhere.

 src/liblzma/api/Makefile.am               |   1 +
 src/liblzma/api/lzma.h                    |   1 +
 src/liblzma/common/Makefile.am            |   5 ++
 src/liblzma/common/easy_common.c          |  54 ++++++++++++++++
 src/liblzma/common/easy_common.h          |  28 ++++++++
 src/liblzma/common/easy_multi.c           | 103 ++++++++++++++++++++++++++++++
 src/liblzma/common/easy_single.c          |  37 +++++++++++
 src/liblzma/common/stream_encoder_multi.c |   3 +-
 src/liblzma/common/stream_encoder_multi.h |  26 ++++++++
 9 files changed, 256 insertions(+), 2 deletions(-)

commit 1747b85a43abc1c3f152dbd349be2ef4089ecf6a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-22 21:16:22 +0200

    Fix Multi-Block Stream encoder's EOPM usage.

 src/liblzma/common/stream_encoder_multi.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0ed6f1adcea540fb9593ca115d36de537f7f0dc6
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-22 00:15:11 +0200

    Made lzma_extra pointers const in lzma_options_stream.

 src/liblzma/api/lzma/stream.h             | 4 ++--
 src/liblzma/common/stream_encoder_multi.c | 8 ++++++--
 2 files changed, 8 insertions(+), 4 deletions(-)

commit 305afa38f64c75af8e81c4167e2d8fa8d85b53a4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-20 20:15:21 +0200

    Updated debug/sync_flush.c.

 debug/sync_flush.c | 26 ++++++++++++++++++++++++--
 1 file changed, 24 insertions(+), 2 deletions(-)

commit d53e9b77054cfade6a643e77d085273a348b189c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-20 20:14:26 +0200

    Added debug/repeat.c.

 debug/Makefile.am |  1 +
 debug/repeat.c    | 43 +++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 44 insertions(+)

commit 107259e306bcfc2336a0fb870fb58034c28faa52
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-20 20:12:58 +0200

    Fix alignment handling bugs in Subblock encoder.
    
    This leaves one known alignment bug unfixed: If repeat count
    doesn't fit into 28-bit integer, the encoder has to split
    this to multiple Subblocks with Subblock Type `Repeating Data'.
    The extra Subblocks may have wrong alignment. Correct alignment
    is restored after the split Repeating Data has been completely
    written out.
    
    Since the encoder doesn't even try to fix the alignment unless
    the size of Data is at least 4 bytes, to trigger this bug you
    need at least 4 GiB of repeating data with sequence length of
    4 or more bytes. Since the worst thing done by this bug is
    misaligned data (no data corruption), this bug simply isn't
    worth fixing, because a proper fix isn't simple.

 src/liblzma/subblock/subblock_encoder.c | 170 ++++++++++++++++++++++----------
 1 file changed, 119 insertions(+), 51 deletions(-)

commit e141fe18950400faaa3503ff88ac20eacd73e88c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-19 21:16:33 +0200

    Implemented LZMA_SYNC_FLUSH support to the Subblock encoder.
    The API for handing Subfilters was changed to make it
    consistent with LZMA_SYNC_FLUSH.
    
    A few sanity checks were added for Subfilter handling. Some
    small bugs were fixed. More comments were added.

 src/liblzma/api/lzma/subblock.h         |  29 ++--
 src/liblzma/subblock/subblock_encoder.c | 263 ++++++++++++++++++++++++--------
 2 files changed, 214 insertions(+), 78 deletions(-)

commit 23c227a864a3b69f38c6a74306161d4e6918d1cc
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-19 15:19:21 +0200

    Revised the Delta filter implementation. The initialization
    function is still shared between encoder and decoder, but the
    actual coding is in separate files for encoder and decoder.
    
    There are now separate functions for the actual delta
    calculation depending on if Delta is the last filter in the
    chain or not. If it is the last, the new code copies the
    data from input to output buffer and does the delta
    calculation at the same time. The old code first copied the
    data, then did the delta in the target buffer, which required
    reading through the data twice.
    
    Support for LZMA_SYNC_FLUSH was added to the Delta encoder.
    This doesn't change anything in the file format.

 src/liblzma/common/Makefile.am     |  14 ++-
 src/liblzma/common/delta_coder.c   | 189 -------------------------------------
 src/liblzma/common/delta_coder.h   |  31 ------
 src/liblzma/common/delta_common.c  |  70 ++++++++++++++
 src/liblzma/common/delta_common.h  |  48 ++++++++++
 src/liblzma/common/delta_decoder.c | 102 ++++++++++++++++++++
 src/liblzma/common/delta_decoder.h |  28 ++++++
 src/liblzma/common/delta_encoder.c |  97 +++++++++++++++++++
 src/liblzma/common/delta_encoder.h |  28 ++++++
 src/liblzma/common/raw_decoder.c   |   2 +-
 src/liblzma/common/raw_encoder.c   |   2 +-
 11 files changed, 387 insertions(+), 224 deletions(-)

commit 61dc82f3e306b25ce3cd3d529df9ec7a0ec04b73
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-18 20:18:08 +0200

    Added the debug directory and the first debug tool
    (sync_flush). These tools are not built unless the
    user runs "make" in the debug directory.

 Makefile.am        |   1 +
 configure.ac       |   1 +
 debug/Makefile.am  |  30 ++++++++++++++
 debug/README       |  17 ++++++++
 debug/sync_flush.c | 116 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 165 insertions(+)

commit 0ae3208db94585eb8294b97ded387de0a3a07646
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-18 20:13:00 +0200

    Added test files to test usage of flush marker in LZMA.

 tests/files/README                               |  12 ++++++++++++
 tests/files/bad-single-lzma-flush_beginning.lzma | Bin 0 -> 53 bytes
 tests/files/bad-single-lzma-flush_twice.lzma     | Bin 0 -> 63 bytes
 tests/files/good-single-lzma-flush_1.lzma        | Bin 0 -> 48 bytes
 tests/files/good-single-lzma-flush_2.lzma        | Bin 0 -> 63 bytes
 5 files changed, 12 insertions(+)

commit ab5feaf1fcc146ef9fd39360c53c290bec39524e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-18 20:02:52 +0200

    Fix LZMA_SYNC_FLUSH handling in LZ and LZMA encoders.
    That code is now almost completely in LZ coder, where
    it can be shared with other LZ77-based algorithms in
    future.

 src/liblzma/lz/lz_encoder.c     | 34 ++++++++++++++++++++++++++--------
 src/liblzma/lz/lz_encoder.h     |  1 +
 src/liblzma/lzma/lzma_encoder.c | 27 ++-------------------------
 3 files changed, 29 insertions(+), 33 deletions(-)

commit 079c4f7fc26b3d0b33d9ae7536697b45f3b73585
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-18 17:21:24 +0200

    Don't add -g to CFLAGS when --enable-debug is specified.
    It's the job of the user to put that in CFLAGS.

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

commit 61d1784d8f1761d979a6da6e223e279ca33815e6
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-18 14:17:37 +0200

    Set stdin and stdout to binary mode on Windows. This patch is
    a forward port of b7b22fcb979a16d3a47c8001f058c9f7d4416068
    from lzma-utils-legacy.git. I don't know if the new code base
    builds on Windows, but this is a start.

 src/lzmadec/lzmadec.c | 9 +++++++++
 1 file changed, 9 insertions(+)

commit c9cba976913e55ff9aac8a8133cc94416c7c1c9c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-18 00:50:29 +0200

    Added test_compress.sh and bunch of files needed by it.
    This new set of tests compress and decompress several
    test files with many different compression options.
    This set of tests will be extended later.

 tests/Makefile.am                 |  30 ++++---
 tests/bcj_test.c                  |  66 ++++++++++++++
 tests/compress_prepared_bcj_sparc | Bin 0 -> 6804 bytes
 tests/compress_prepared_bcj_x86   | Bin 0 -> 4649 bytes
 tests/create_compress_files.c     | 164 ++++++++++++++++++++++++++++++++++
 tests/test_compress.sh            | 183 ++++++++++++++++++++++++++++++++++++++
 6 files changed, 433 insertions(+), 10 deletions(-)

commit 33be3c0e24d8f43376ccf71cc77d53671e792f07
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-17 18:56:53 +0200

    Subblock decoder: Don't exit the main loop in decode_buffer()
    too early if we hit End of Input while decoding a Subblock of
    type Repeating Data. To keep the loop termination condition
    elegant, the order of enumerations in coder->sequence were
    changed.
    
    To keep the case-labels in roughly the same order as the
    enumerations in coder->sequence, large chunks of code was
    moved around. This made the diff big and ugly compared to
    the amount of the actual changes made.

 src/liblzma/subblock/subblock_decoder.c | 272 ++++++++++++++++----------------
 1 file changed, 139 insertions(+), 133 deletions(-)

commit b254bd97b1cdb68d127523d91ca9e054ed89c4fd
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-17 17:39:42 +0200

    Fix wrong too small size of argument unfiltered_max
    in ia64_coder_init(). It triggered assert() in
    simple_coder.c, and could have caused a buffer overflow.
    
    This error was probably a copypaste mistake, since most
    of the simple filters use unfiltered_max = 4.

 src/liblzma/simple/ia64.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8f5794c8f1a30e8e3b524b415bbe81af2e04c64a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-17 17:27:45 +0200

    Added --delta to the output of "lzma --help".

 src/lzma/help.c | 4 ++++
 1 file changed, 4 insertions(+)

commit f88590e0014b38d40465937c19f25f05f16c79ae
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-17 13:14:20 +0200

    Fix Subblock docoder: If Subblock filter was used with known
    Uncompressed Size, and the last output byte was from RLE,
    the code didn't stop decoding as it should have done.

 src/liblzma/subblock/subblock_decoder.c | 6 ++++++
 1 file changed, 6 insertions(+)

commit bc0b945ca376e333077644d2f7fd54c2848aab8a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-16 16:33:37 +0200

    Tiny non-technical edits to file-format.txt.

 doc/file-format.txt | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 7599bb7064ccf007f054595dedda7927af868252
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-16 14:48:04 +0200

    Plugged a memory leak in stream_decoder.c.

 src/liblzma/common/stream_decoder.c | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

commit 0b581539311f3712946e81e747839f8fb5f441a7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-16 14:47:27 +0200

    Added memory leak detection to lzmadec.c.

 src/lzmadec/lzmadec.c | 3 +++
 1 file changed, 3 insertions(+)

commit 5b5b13c7bb8fde6331064d21f3ebde41072480c4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-16 14:46:50 +0200

    Added lzma_memlimit_count().

 src/liblzma/api/lzma/memlimit.h      | 10 ++++++++++
 src/liblzma/common/memory_limitter.c | 19 +++++++++++++++++++
 2 files changed, 29 insertions(+)

commit 19389f2b82ec54fd4c847a18f16482e7be4c9887
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-16 14:31:44 +0200

    Added ARRAY_SIZE(array) macro.

 src/common/sysdefs.h | 4 ++++
 1 file changed, 4 insertions(+)

commit 9bc33a54cbf83952130adbcb1be32c6882485416
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-16 13:27:03 +0200

    Make Uncompresed Size validation more strict
    in alone_decoder.c.

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

commit 01d71d60b79027e1ce3eb9c79ae5191e1407c883
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-15 17:46:59 +0200

    Free the allocated memory in lzmadec if debugging is
    enabled. This should make it possible to detect possible
    memory leaks with Valgrind.

 src/lzmadec/lzmadec.c | 7 +++++++
 1 file changed, 7 insertions(+)

commit 8235e6e5b2878f76633afcda9a334640db503ef5
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-15 16:25:38 +0200

    Fix memory leaks from test_block_header.c.

 tests/test_block_header.c | 19 +++++++++++++++++--
 1 file changed, 17 insertions(+), 2 deletions(-)

commit f10fc6a69d40b6d5c9cfbf8d3746f49869c2e2f6
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-15 14:23:35 +0200

    Use fastpos.h when encoding LZMA dictionary size in
    Filter Flags encoder.

 src/liblzma/common/filter_flags_encoder.c | 40 +++++++++++++++----------------
 1 file changed, 19 insertions(+), 21 deletions(-)

commit e5728142a2048979f5c0c2149ce71ae952a092e1
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-15 14:02:22 +0200

    Revised the fastpos code. It now uses the slightly faster
    table-based version from LZMA SDK 4.57. This should be
    fast on most systems.
    
    A simpler and smaller alternative version is also provided.
    On some CPUs this can be even a little faster than the
    default table-based version (see comments in fastpos.h),
    but on most systems the table-based code is faster.

 src/liblzma/common/init_encoder.c          |   3 -
 src/liblzma/lzma/Makefile.am               |   4 +
 src/liblzma/lzma/fastpos.h                 | 156 +++++++++
 src/liblzma/lzma/fastpos_table.c           | 519 +++++++++++++++++++++++++++++
 src/liblzma/lzma/fastpos_tablegen.c        |  63 ++++
 src/liblzma/lzma/lzma_common.h             |   3 +-
 src/liblzma/lzma/lzma_encoder.c            |   1 +
 src/liblzma/lzma/lzma_encoder_getoptimum.c |   1 +
 src/liblzma/lzma/lzma_encoder_init.c       |  22 --
 src/liblzma/lzma/lzma_encoder_private.h    |  21 --
 10 files changed, 746 insertions(+), 47 deletions(-)

commit 10437b5b567f6a025ff16c45a572e417a0a9cc26
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-15 13:32:13 +0200

    Added bsr.h.

 src/liblzma/common/Makefile.am |  1 +
 src/liblzma/common/bsr.h       | 61 ++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 62 insertions(+)

commit f3c88e8b8d8dd57f4bba5f0921eebf276437c244
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-15 13:29:14 +0200

    Fixed assembler detection in configure.ac, and added
    detection for x86_64.

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

commit 54ec204f58287f50d3976288295da4188a19192b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-15 12:20:41 +0200

    Omit invalid space from printf() format string
    in price_table_gen.c.

 src/liblzma/rangecoder/price_table_gen.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 01b4b19f49f00e17a0f9cb8754c672ac0847b6e1
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-15 09:54:34 +0200

    Removed a few unused macros from lzma_common.h.

 src/liblzma/lzma/lzma_common.h | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

commit 19bd7f3cf25e4ff8487ef7098ca4a7b58681961d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-15 08:37:42 +0200

    Fix a typo in lzma_encoder.c.

 src/liblzma/lzma/lzma_encoder.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9f9b1983013048f2142e8bc7e240149d2687bedc
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-15 08:36:25 +0200

    Convert bittree_get_price() and bittree_reverse_get_price()
    from macros to inline functions.

 src/liblzma/lzma/lzma_encoder.c            | 19 +++-----
 src/liblzma/lzma/lzma_encoder_getoptimum.c | 16 +++----
 src/liblzma/rangecoder/range_encoder.h     | 76 +++++++++++++++++-------------
 3 files changed, 56 insertions(+), 55 deletions(-)

commit 78e85cb1a7667c54853670d2eb09d754bcbda87d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-15 07:44:59 +0200

    Fix CRC code in case --enable-small is used.

 src/liblzma/check/crc32_init.c    | 2 +-
 src/liblzma/check/crc64_init.c    | 2 +-
 src/liblzma/common/init_decoder.c | 2 --
 src/liblzma/common/init_encoder.c | 2 --
 tests/test_check.c                | 2 ++
 5 files changed, 4 insertions(+), 6 deletions(-)

commit 949d4346e2d75bcd9dcb66c394d8d851d8db3aa0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-15 07:41:39 +0200

    Fix typo in test_index.c.

 tests/test_index.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d13d693155c176fc9e9ad5c50d48ccba27c2d9c6
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-15 07:40:21 +0200

    Added precomputed range coder probability price table.

 src/liblzma/common/init_encoder.c         |  5 ++-
 src/liblzma/rangecoder/Makefile.am        |  9 +++-
 src/liblzma/rangecoder/price_table.c      | 70 +++++++++++++++++++++++++++++++
 src/liblzma/rangecoder/price_table_gen.c  | 55 ++++++++++++++++++++++++
 src/liblzma/rangecoder/price_table_init.c | 48 +++++++++++++++++++++
 src/liblzma/rangecoder/range_common.h     |  4 +-
 src/liblzma/rangecoder/range_encoder.c    | 46 --------------------
 src/liblzma/rangecoder/range_encoder.h    | 21 +++++-----
 8 files changed, 197 insertions(+), 61 deletions(-)

commit 362dc3843b373c1007a50a4719f378981f18ae03
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-14 13:42:43 +0200

    Remove RC_BUFFER_SIZE from lzma_encoder_private.h
    and replace it with a sanity check.

 src/liblzma/lzma/lzma_encoder_private.h | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit e22b37968d153683fec61ad37b6b160cb7ca4ddc
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-14 13:39:54 +0200

    Major changes to LZ encoder, LZMA encoder, and range encoder.
    These changes implement support for LZMA_SYNC_FLUSH in LZMA
    encoder, and move the temporary buffer needed by range encoder
    from lzma_range_encoder structure to lzma_lz_encoder.

 src/liblzma/lz/lz_encoder.c            | 138 ++++++++++++++++++++++++++++-----
 src/liblzma/lz/lz_encoder.h            |  17 ++--
 src/liblzma/lzma/lzma_encoder.c        |  74 ++++++++++--------
 src/liblzma/rangecoder/range_encoder.h | 117 ++++++++--------------------
 4 files changed, 206 insertions(+), 140 deletions(-)

commit b59ef3973781f892c0a72b5e5934194567100be5
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-14 13:34:29 +0200

    Added one assert() to process.c of the command line tool.

 src/lzma/process.c | 1 +
 1 file changed, 1 insertion(+)

commit 9547e734a00ddb64c851fa3f116e4f9e7d763ea7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-14 12:09:52 +0200

    Don't use coder->lz.stream_end_was_reached in assertions
    in match_c.h.

 src/liblzma/lz/match_c.h | 2 --
 1 file changed, 2 deletions(-)

commit 3e09e1c05871f3757f759b801890ccccc9286608
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-14 12:08:02 +0200

    In lzma_read_match_distances(), don't use
    coder->lz.stream_end_was_reached. That variable
    will be removed, and the check isn't required anyway.
    Rearrange the check so that it doesn't make one to
    think that there could be an integer overflow.

 src/liblzma/lzma/lzma_encoder_private.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit a670fec8021e5962429689c194148a04c3418872
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-14 11:56:41 +0200

    Small LZMA_SYNC_FLUSH fixes to Block and Single-Stream encoders.

 src/liblzma/common/block_encoder.c         | 4 ++--
 src/liblzma/common/stream_encoder_single.c | 1 +
 2 files changed, 3 insertions(+), 2 deletions(-)

commit 3599dba9570a6972a16b6398d6c838e9b420e985
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-14 11:54:56 +0200

    More fixes to LZMA decoder's flush marker handling.

 src/liblzma/lzma/lzma_decoder.c | 52 ++++++++++++++++++++++++-----------------
 1 file changed, 30 insertions(+), 22 deletions(-)

commit f73c2ab6079ed5675a42b39d584a567befbd4624
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-10 17:13:42 +0200

    Eliminate lzma_lz_encoder.must_move_pos. It's needed
    only in one place which isn't performance criticial.

 src/liblzma/lz/lz_encoder.c | 6 ++----
 src/liblzma/lz/lz_encoder.h | 4 ----
 2 files changed, 2 insertions(+), 8 deletions(-)

commit 382808514a42b2f4b4a64515e2dfb3fc1bc48ecd
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-09 20:05:57 +0200

    Define HAVE_ASM_X86 when x86 assembler optimizations are
    used. This #define will be useful for inline assembly.

 configure.ac | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 0e70fbe4032351aab13a1cd8e5deced105c0b276
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-09 12:06:46 +0200

    Added good-single-none-empty_3.lzma and
    bad-single-none-empty.lzma.

 tests/files/README                        |   6 ++++++
 tests/files/bad-single-none-empty.lzma    | Bin 0 -> 19 bytes
 tests/files/good-single-none-empty_3.lzma | Bin 0 -> 19 bytes
 3 files changed, 6 insertions(+)

commit 379fbbe84d922c7cc00afa65c6f0c095da596b19
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-08 23:11:59 +0200

    Take advantage of return_if_error() in block_decoder.c.

 src/liblzma/common/block_decoder.c | 23 +++++++----------------
 1 file changed, 7 insertions(+), 16 deletions(-)

commit 97d5fa82077e57815dfad995dc393c2809a78539
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-08 23:10:57 +0200

    Updated tests/files/README.

 tests/files/README | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

commit 3bb9bb310936cba6a743b4f06739a397dec7c28f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-08 23:05:40 +0200

    Added test files with empty Compressed Data.

 tests/files/README                        |   6 ++++++
 tests/files/good-single-lzma-empty.lzma   | Bin 0 -> 21 bytes
 tests/files/good-single-none-empty_1.lzma | Bin 0 -> 18 bytes
 tests/files/good-single-none-empty_2.lzma | Bin 0 -> 26 bytes
 4 files changed, 6 insertions(+)

commit 7054c5f5888ac6a7178cd43dc9583ce6c7e78c9f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-08 22:58:42 +0200

    Fix decoding of Blocks that have only Block Header.

 src/liblzma/common/block_decoder.c | 37 ++++++++++++++-----------------------
 1 file changed, 14 insertions(+), 23 deletions(-)

commit 753e4d95cd1cf29c632dfe1a670af7c67aeffbf4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-08 22:27:46 +0200

    Added good-single-subblock_implicit.lzma.

 tests/files/README                             |   2 ++
 tests/files/good-single-subblock_implicit.lzma | Bin 0 -> 35 bytes
 2 files changed, 2 insertions(+)

commit faeac7b7aca75f86afed1e7cc06279d9d497c627
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-08 18:50:30 +0200

    Disable CRC32 from Block Headers when --check=none
    has been specified.

 src/lzma/process.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a751126dbb656767ed4666cf0e5d3e17349d93d1
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-08 13:36:29 +0200

    Fixed encoding of empty files. Arguments to is_size_valid()
    were in wrong order in block_encoder.c.

 src/liblzma/common/block_encoder.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9080267603b1006c4867c823307dca9df8be0d20
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-08 13:35:36 +0200

    Added a few test files.

 tests/files/README                                 |  21 ++++++++++++++++++---
 tests/files/bad-cat-single-none-pad_garbage_1.lzma | Bin 0 -> 65 bytes
 tests/files/bad-cat-single-none-pad_garbage_2.lzma | Bin 0 -> 65 bytes
 tests/files/bad-cat-single-none-pad_garbage_3.lzma | Bin 0 -> 65 bytes
 tests/files/bad-single-data_after_eopm.lzma        | Bin 55 -> 0 bytes
 tests/files/bad-single-data_after_eopm_1.lzma      | Bin 0 -> 55 bytes
 tests/files/bad-single-none-truncated.lzma         | Bin 0 -> 29 bytes
 7 files changed, 18 insertions(+), 3 deletions(-)

commit b4943ccf73b64fc93a90a23474509c316f55eb2b
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-08 12:29:58 +0200

    Avoid using ! in test_files.sh, because that doesn't work
    with some ancient /bin/sh versions.

 tests/test_files.sh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit e2417b2b9134f3f65e14b61e23cd3644d8954353
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-08 00:48:30 +0200

    More pre-C99 inttypes.h compatibility fixes. Now the code
    should work even if the system has no inttypes.h.

 src/common/physmem.h               | 11 -----------
 src/liblzma/check/crc32_init.c     |  5 +----
 src/liblzma/check/crc32_tablegen.c |  7 ++-----
 src/liblzma/check/crc64_init.c     |  5 +----
 src/liblzma/check/crc64_tablegen.c |  7 ++-----
 5 files changed, 6 insertions(+), 29 deletions(-)

commit 5d227e51c23639423f4ade06aabb54e131f8505e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-07 23:25:32 +0200

    Updated fi.po although it's currently pretty much crap.

 po/fi.po | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit c7189d981a1b27c63da0c1ee80d9b5cd8ce1733d
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-07 23:14:25 +0200

    Test for $GCC = yes instead of if it is non-empty. This
    way it is possible to use ac_cv_c_compiler_gnu=no to
    force configure to think it is using non-GNU C compiler.

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

commit 3dbbea82b74bb841c995ad332a3aeca613015e10
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-07 21:49:41 +0200

    Added test_files.sh to tests/Makefile.am so it gets
    included in the tarball with "make dist".

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

commit 2fd2d181543feab1b4003f3ac6e85625fbee04f0
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-07 18:22:24 +0200

    Cosmetic edit to test_files.sh.

 tests/test_files.sh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 9a71d573100a990ceb30ce0bec6a9a15d795605f
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-07 18:09:44 +0200

    Added tests/files/README.

 tests/files/README | 108 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 108 insertions(+)

commit 47f48fe9936ed72617a60fbd015df7e0e47a1e43
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-07 14:20:57 +0200

    Tell in COPYING that everything in tests/files is
    public domain.

 COPYING | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 3502b3e1d00251d3c8dda96079440705c28d8225
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-07 14:19:05 +0200

    Cleaned up the tests/files directory.

 tests/files/bad-single-subblock-padding_loop.lzma   | Bin 0 -> 43 bytes
 tests/files/bad-single-subblock1023-slow.lzma       | Bin 0 -> 7886 bytes
 tests/files/malicious-single-subblock-loop.lzma     | Bin 43 -> 0 bytes
 tests/files/malicious-single-subblock-lzma.lzma     | Bin 505 -> 0 bytes
 tests/files/malicious-single-subblock1023-slow.lzma | Bin 7886 -> 0 bytes
 5 files changed, 0 insertions(+), 0 deletions(-)

commit 908b2ac604b9940369d7fe8a45e9eb6da5d2a24c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-07 13:49:19 +0200

    Added test_files.sh to test decoding of the files in
    the tests/files directory. It doesn't test the malicious
    files yet.

 tests/Makefile.am   |  4 +++-
 tests/test_files.sh | 40 ++++++++++++++++++++++++++++++++++++++++
 2 files changed, 43 insertions(+), 1 deletion(-)

commit ecb2a6548f5978022a8fa931719dc575f5fd3bf6
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-07 11:23:13 +0200

    Updated README regarding the assembler optimizations.

 README | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit eacb8050438d3e6146c86eb9732d3fb1ef1825cb
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-07 10:58:00 +0200

    Updated THANKS.

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

commit 1239649f96132b18e3b7e2dd152ecf53a195caa8
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-06 21:47:17 +0200

    Cosmetic changes to configure.ac.

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

commit 88ee301ec2e4506a30ec7ac9aaa2288e2dcadd0e
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-06 19:46:38 +0200

    Automatically disable assembler code on Darwin x86.
    Darwin has different ABI than GNU+Linux and Solaris,
    thus the assembler code doesn't assemble on Darwin.

 configure.ac | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

commit c15a7abf66e3a70792f7444115e484c7981c8284
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-06 19:45:27 +0200

    With printf(), use PRIu64 with a cast to uint64_t instead
    of %zu, because some pre-C99 libc versions don't support %zu.

 src/lzma/help.c       | 13 +++++++------
 src/lzmadec/lzmadec.c |  6 ++++--
 2 files changed, 11 insertions(+), 8 deletions(-)

commit 4e7e54c4c522ab2f6a7abb92cefc4f707e9568fb
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-06 16:27:41 +0200

    Introduced compatibility with systems that have pre-C99
    or no inttypes.h. This is useful when the compiler has
    good enough support for C99, but libc headers don't.
    
    Changed liblzma API so that sys/types.h and inttypes.h
    have to be #included before #including lzma.h. On systems
    that don't have C99 inttypes.h, it's the problem of the
    applications to provide the required types and macros
    before #including lzma.h.
    
    If lzma.h defined the missing types and macros, it could
    conflict with third-party applications whose configure
    has detected that the types are missing and defined them
    in config.h already. An alternative would have been
    introducing lzma_uint32 and similar types, but that would
    just be an extra pain on modern systems.

 configure.ac                       | 13 ++++++++-
 doc/liblzma-intro.txt              | 10 +++++--
 src/common/sysdefs.h               | 59 +++++++++++++++++++++++++++++++++++++-
 src/liblzma/api/lzma.h             | 40 +++++++++++++++++---------
 src/liblzma/check/crc32_table.c    |  4 +--
 src/liblzma/check/crc32_table_be.h |  2 --
 src/liblzma/check/crc32_table_le.h |  2 --
 src/liblzma/check/crc32_tablegen.c |  1 -
 src/liblzma/check/crc64_table.c    |  4 +--
 src/liblzma/check/crc64_table_be.h |  2 --
 src/liblzma/check/crc64_table_le.h |  2 --
 src/liblzma/check/crc64_tablegen.c |  1 -
 src/lzma/private.h                 |  1 -
 13 files changed, 106 insertions(+), 35 deletions(-)

commit a71864f77dfb76b5d78a270641539947c312583a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-05 19:57:00 +0200

    Fix typo in comment (INT64_MAX -> UINT64_MAX).

 src/liblzma/api/lzma/vli.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 072927905a3b66281c6311b4b351caa501d8b73a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-05 19:42:04 +0200

    Rearranged testing of GCC-specific flags.

 configure.ac | 33 +++++++++++++++++++++++----------
 1 file changed, 23 insertions(+), 10 deletions(-)

commit d160ee32598c6d1cd9054ef019e8c9331208b188
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-05 01:20:24 +0200

    Another bug fix for flush marker detection.

 src/liblzma/lzma/lzma_decoder.c | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

commit fc67f79f607cbfa78c6f47a69dec098d8659b162
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-04 21:37:01 +0200

    Fix stupid bugs in flush marker detection.

 src/liblzma/lzma/lzma_decoder.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit 0029cbbabe87d491fc046a55a629a6d556010baa
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-04 21:30:33 +0200

    Added support for flush marker, which will be in files
    that use LZMA_SYNC_FLUSH with encoder (not implemented
    yet). This is a new feature in the raw LZMA format,
    which isn't supported by old decoders. This shouldn't
    be a problem in practice, since lzma_alone_encoder()
    will not allow LZMA_SYNC_FLUSH, and thus not allow
    creating files on decodable with old decoders.
    
    Made lzma_decoder.c to require tab width of 4 characters
    if one wants to fit the code in 80 columns. This makes
    the code easier to read.

 src/liblzma/lzma/lzma_common.h  |   4 +
 src/liblzma/lzma/lzma_decoder.c | 217 ++++++++++++++++++----------------------
 2 files changed, 104 insertions(+), 117 deletions(-)

commit bbfd1f6ab058a7e661545205befcb7f70c5685ab
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2008-01-04 20:45:05 +0200

    Moved range decoder initialization (reading the first
    five input bytes) from LZMA decoder to range decoder
    header. Did the same for decoding of direct bits.

 src/liblzma/lzma/lzma_decoder.c        | 42 +++-------------
 src/liblzma/rangecoder/range_decoder.h | 87 +++++++++++++++++++++++-----------
 2 files changed, 66 insertions(+), 63 deletions(-)

commit 5db745cd2a74f6ed2e52f5c716c08ed0daf17ebc
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2007-12-14 11:15:21 +0200

    Added a note to README that --disable-assembler
    must be used on Darwin.

 README | 4 ++++
 1 file changed, 4 insertions(+)

commit 44b333d4615b5aabc557a0e1b6bb0096da3fae24
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2007-12-14 10:07:10 +0200

    Use the filename suffix .S instead of .s for assembler files
    so that the preprocessor removes the /* */ style comments,
    which are not supported by some non-GNU assemblers (Solaris)
    that otherwise work with this code.

 src/liblzma/check/Makefile.am |   4 +-
 src/liblzma/check/crc32_x86.S | 217 ++++++++++++++++++++++++++++++++++++++++++
 src/liblzma/check/crc32_x86.s | 217 ------------------------------------------
 src/liblzma/check/crc64_x86.S | 203 +++++++++++++++++++++++++++++++++++++++
 src/liblzma/check/crc64_x86.s | 203 ---------------------------------------
 5 files changed, 422 insertions(+), 422 deletions(-)

commit ec1c82b2e82f395f6e8e19ac212a639644330cd7
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2007-12-14 09:59:05 +0200

    Fixed wrong symbol name in crc64_x86.s.

 src/liblzma/check/crc64_x86.s | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2881570df6803eed2fe550af34574e8e61794804
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2007-12-14 09:53:24 +0200

    Use .globl instead of .global in x86 assembler code for
    better portability. Still needs fixing the commenting.

 src/liblzma/check/crc32_x86.s | 2 +-
 src/liblzma/check/crc64_x86.s | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 698470b8f33fc0e5f27dafa93b39b6dd5dde5a66
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2007-12-13 20:14:37 +0200

    Fixed a few short options that take an argument.
    short_opts[] was missing colons to indicate
    required argument. Thanks to Fabio Pedretti for
    the bug report.

 src/lzma/args.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 918bcb0e0728d2d976621e9f35b56f224f11d989
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2007-12-11 17:08:04 +0200

    Removed uncompressed size tracking from Delta encoder too.

 src/liblzma/common/delta_coder.c | 21 +++------------------
 1 file changed, 3 insertions(+), 18 deletions(-)

commit 3e16d51dd645667b05ff826665b1fc353aa41cd9
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2007-12-11 16:49:19 +0200

    Remove uncompressed size tracking from the filter encoders.
    It's not strictly needed there, and just complicates the
    code. LZ encoder never even had this feature.
    
    The primary reason to have uncompressed size tracking in
    filter encoders was validating that the application
    doesn't give different amount of input that it had
    promised. A side effect was to validate internal workings
    of liblzma.
    
    Uncompressed size tracking is still present in the Block
    encoder. Maybe it should be added to LZMA_Alone and raw
    encoders too. It's simpler to have one coder just to
    validate the uncompressed size instead of having it
    in every filter.

 src/liblzma/common/copy_coder.c         | 25 ++--------------------
 src/liblzma/simple/simple_coder.c       | 29 ++++---------------------
 src/liblzma/subblock/subblock_encoder.c | 38 ++++++---------------------------
 3 files changed, 12 insertions(+), 80 deletions(-)

commit 5286723e0d1ac386d5b07f08d78e61becf895a5a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2007-12-11 14:10:53 +0200

    Get rid of no-NLS gnulib. I don't know how to get it
    working with Automake. People who want smaller lzmadec
    should use --disable-nls on non-GNU systems.

 lib/Makefile.am         | 10 +---------
 src/lzma/Makefile.am    |  2 +-
 src/lzmadec/Makefile.am |  4 +++-
 3 files changed, 5 insertions(+), 11 deletions(-)

commit ce8b036a6c7a43b290356b673d953f6d76b2be64
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2007-12-11 14:09:35 +0200

    Fixed a typo in tests/Makefile.am which prevented
    building the tests if gnulib was needed.

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

commit 7c1ad41eb611ed89e5bb8792a3beb533b7aa59f4
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2007-12-11 11:18:58 +0200

    Fixed wrong type of flags_size in Subblock encoder.

 src/liblzma/subblock/subblock_encoder.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ce64df716243fdc40359090d1f6541f3a4f5f21a
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2007-12-10 20:44:16 +0200

    Bumped version number to 4.42.3alpha.

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

commit b499a0403ea5c41d6a25b40275eb6c57643052ce
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2007-12-10 15:02:50 +0200

    Disabled some unneeded warnings and made "make dist" work.

 Makefile.am  |  9 +++------
 configure.ac |  9 ++++++---
 po/fi.po     | 47 ++++++++++++++++++++++++-----------------------
 3 files changed, 33 insertions(+), 32 deletions(-)

commit 2ab8adb5165a0b77114a7eb21f9ff1e6a266f172
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2007-12-09 21:43:15 +0200

    Added LZMA_SYNC_FLUSH support to the Copy filter.

 src/liblzma/common/copy_coder.c | 92 +++++++++++++++++++++++++----------------
 1 file changed, 57 insertions(+), 35 deletions(-)

commit 329c272d501e88793dda5540358d55c12428d194
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2007-12-09 17:14:07 +0200

    Added missing LZMA_API to the C versions of the CRC functions.
    The x86 assembler versions were already OK.

 src/liblzma/check/crc32.c | 2 +-
 src/liblzma/check/crc64.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit c90daf86ce683fa8cf80491d624ffb158dfbd9d7
Author: Jim Meyering <meyering@redhat.com>
Date:   2007-12-09 15:34:25 +0100

    * tests/test_block_header.c (test3): Remove duplicate initializer.

 autogen.sh                | 2 +-
 tests/test_block_header.c | 1 -
 2 files changed, 1 insertion(+), 2 deletions(-)

commit 07ac881779a8477f2c1ab112b91a129e24aa743c
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2007-12-09 17:06:45 +0200

    Take advantage of return_if_error() macro in more places.
    Cleaned Subblock filter's initialization code too.

 src/liblzma/common/block_decoder.c         | 22 +++-------
 src/liblzma/common/delta_coder.c           |  8 +---
 src/liblzma/common/stream_decoder.c        | 17 +++-----
 src/liblzma/common/stream_encoder_multi.c  | 68 ++++++++++--------------------
 src/liblzma/common/stream_encoder_single.c |  8 ++--
 src/liblzma/subblock/subblock_decoder.c    | 33 +++++----------
 src/liblzma/subblock/subblock_encoder.c    | 45 ++++++--------------
 7 files changed, 63 insertions(+), 138 deletions(-)

commit 41338717964f510ee61d70b25bd4c502ec9f77cf
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2007-12-09 12:13:01 +0200

    Added a bunch of .lzma test files.

 tests/files/bad-single-data_after_eopm.lzma         | Bin 0 -> 55 bytes
 tests/files/bad-single-data_after_eopm_2.lzma       | Bin 0 -> 56 bytes
 tests/files/bad-single-subblock_subblock.lzma       | Bin 0 -> 26 bytes
 tests/files/good-cat-single-none-pad.lzma           | Bin 0 -> 64 bytes
 tests/files/good-single-delta-lzma.tiff.lzma        | Bin 0 -> 51409 bytes
 tests/files/good-single-lzma.lzma                   | Bin 0 -> 44 bytes
 tests/files/good-single-none-pad.lzma               | Bin 0 -> 32 bytes
 tests/files/good-single-none.lzma                   | Bin 0 -> 30 bytes
 tests/files/good-single-subblock-lzma.lzma          | Bin 0 -> 50 bytes
 tests/files/good-single-subblock_rle.lzma           | Bin 0 -> 118 bytes
 tests/files/malicious-multi-metadata-64PiB.lzma     | Bin 0 -> 51 bytes
 tests/files/malicious-single-subblock-256MiB.lzma   | Bin 0 -> 30 bytes
 tests/files/malicious-single-subblock-64PiB.lzma    | Bin 0 -> 45 bytes
 tests/files/malicious-single-subblock-loop.lzma     | Bin 0 -> 43 bytes
 tests/files/malicious-single-subblock-lzma.lzma     | Bin 0 -> 505 bytes
 tests/files/malicious-single-subblock1023-slow.lzma | Bin 0 -> 7886 bytes
 tests/files/malicious-single-subblock31-slow.lzma   | Bin 0 -> 1233 bytes
 17 files changed, 0 insertions(+), 0 deletions(-)

commit ff946ceb7975d4f11950afd33f6315b4d20d1a03
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2007-12-09 11:24:48 +0200

    Re-enabled the security checks in Subblock decoder
    that were disabled for debugging reasons.

 src/liblzma/subblock/subblock_decoder.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 2bf36d22d2c24ac3f488e63b35564fa2f6dab8d1
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2007-12-09 11:03:28 +0200

    Fixed the tests to build with -Werror.

 tests/test_block_header.c |  2 +-
 tests/test_check.c        |  2 +-
 tests/test_filter_flags.c |  2 +-
 tests/test_index.c        | 14 +++++++-------
 tests/test_info.c         |  2 +-
 tests/test_stream_flags.c |  2 +-
 6 files changed, 12 insertions(+), 12 deletions(-)

commit 5d018dc03549c1ee4958364712fb0c94e1bf2741
Author: Lasse Collin <lasse.collin@tukaani.org>
Date:   2007-12-09 00:42:33 +0200

    Imported to git.

 AUTHORS                                        |   18 +
 COPYING                                        |   24 +
 COPYING.GPLv2                                  |  339 +++++
 COPYING.GPLv3                                  |  674 +++++++++
 COPYING.LGPLv2.1                               |  504 +++++++
 ChangeLog                                      |    2 +
 Doxyfile.in                                    | 1229 ++++++++++++++++
 Makefile.am                                    |   38 +
 NEWS                                           |    0
 README                                         |  151 ++
 THANKS                                         |   23 +
 TODO                                           |  109 ++
 autogen.sh                                     |   38 +
 configure.ac                                   |  611 ++++++++
 doc/bugs.txt                                   |   46 +
 doc/faq.txt                                    |  247 ++++
 doc/file-format.txt                            | 1861 ++++++++++++++++++++++++
 doc/history.txt                                |  140 ++
 doc/liblzma-advanced.txt                       |  324 +++++
 doc/liblzma-hacking.txt                        |  112 ++
 doc/liblzma-intro.txt                          |  188 +++
 doc/liblzma-security.txt                       |  219 +++
 doc/lzma-intro.txt                             |  107 ++
 extra/scanlzma/scanlzma.c                      |   85 ++
 lib/Makefile.am                                |   40 +
 lib/getopt.c                                   | 1191 +++++++++++++++
 lib/getopt1.c                                  |  171 +++
 lib/getopt_.h                                  |  226 +++
 lib/getopt_int.h                               |  131 ++
 lib/gettext.h                                  |  240 +++
 m4/acx_pthread.m4                              |  279 ++++
 m4/getopt.m4                                   |   83 ++
 po/LINGUAS                                     |    1 +
 po/Makevars                                    |   46 +
 po/POTFILES.in                                 |   13 +
 po/fi.po                                       |  445 ++++++
 src/Makefile.am                                |   16 +
 src/common/open_stdxxx.h                       |   50 +
 src/common/physmem.h                           |   77 +
 src/common/sysdefs.h                           |  100 ++
 src/liblzma/Makefile.am                        |   47 +
 src/liblzma/api/Makefile.am                    |   39 +
 src/liblzma/api/lzma.h                         |  122 ++
 src/liblzma/api/lzma/alignment.h               |   60 +
 src/liblzma/api/lzma/alone.h                   |   82 ++
 src/liblzma/api/lzma/auto.h                    |   41 +
 src/liblzma/api/lzma/base.h                    |  410 ++++++
 src/liblzma/api/lzma/block.h                   |  409 ++++++
 src/liblzma/api/lzma/check.h                   |  128 ++
 src/liblzma/api/lzma/copy.h                    |   29 +
 src/liblzma/api/lzma/delta.h                   |   49 +
 src/liblzma/api/lzma/extra.h                   |  114 ++
 src/liblzma/api/lzma/filter.h                  |  166 +++
 src/liblzma/api/lzma/index.h                   |   84 ++
 src/liblzma/api/lzma/info.h                    |  315 ++++
 src/liblzma/api/lzma/init.h                    |   85 ++
 src/liblzma/api/lzma/lzma.h                    |  312 ++++
 src/liblzma/api/lzma/memlimit.h                |  157 ++
 src/liblzma/api/lzma/metadata.h                |  100 ++
 src/liblzma/api/lzma/raw.h                     |   72 +
 src/liblzma/api/lzma/simple.h                  |   85 ++
 src/liblzma/api/lzma/stream.h                  |  178 +++
 src/liblzma/api/lzma/stream_flags.h            |  142 ++
 src/liblzma/api/lzma/subblock.h                |  197 +++
 src/liblzma/api/lzma/version.h                 |   59 +
 src/liblzma/api/lzma/vli.h                     |  244 ++++
 src/liblzma/check/Makefile.am                  |   64 +
 src/liblzma/check/check.c                      |  160 ++
 src/liblzma/check/check.h                      |  102 ++
 src/liblzma/check/check_byteswap.h             |   43 +
 src/liblzma/check/check_init.c                 |   37 +
 src/liblzma/check/crc32.c                      |   88 ++
 src/liblzma/check/crc32_init.c                 |   58 +
 src/liblzma/check/crc32_table.c                |   22 +
 src/liblzma/check/crc32_table_be.h             |  527 +++++++
 src/liblzma/check/crc32_table_le.h             |  527 +++++++
 src/liblzma/check/crc32_tablegen.c             |   55 +
 src/liblzma/check/crc32_x86.s                  |  217 +++
 src/liblzma/check/crc64.c                      |   75 +
 src/liblzma/check/crc64_init.c                 |   58 +
 src/liblzma/check/crc64_table.c                |   22 +
 src/liblzma/check/crc64_table_be.h             |  523 +++++++
 src/liblzma/check/crc64_table_le.h             |  523 +++++++
 src/liblzma/check/crc64_tablegen.c             |   56 +
 src/liblzma/check/crc64_x86.s                  |  203 +++
 src/liblzma/check/crc_macros.h                 |   33 +
 src/liblzma/check/sha256.c                     |  203 +++
 src/liblzma/common/Makefile.am                 |   94 ++
 src/liblzma/common/alignment.c                 |  118 ++
 src/liblzma/common/allocator.c                 |   57 +
 src/liblzma/common/alone_decoder.c             |  197 +++
 src/liblzma/common/alone_decoder.h             |   24 +
 src/liblzma/common/alone_encoder.c             |  167 +++
 src/liblzma/common/auto_decoder.c              |  113 ++
 src/liblzma/common/block_decoder.c             |  405 ++++++
 src/liblzma/common/block_decoder.h             |   29 +
 src/liblzma/common/block_encoder.c             |  375 +++++
 src/liblzma/common/block_encoder.h             |   29 +
 src/liblzma/common/block_header_decoder.c      |  373 +++++
 src/liblzma/common/block_header_encoder.c      |  211 +++
 src/liblzma/common/block_private.h             |   46 +
 src/liblzma/common/chunk_size.c                |   74 +
 src/liblzma/common/code.c                      |  203 +++
 src/liblzma/common/common.h                    |  271 ++++
 src/liblzma/common/copy_coder.c                |  143 ++
 src/liblzma/common/copy_coder.h                |   31 +
 src/liblzma/common/delta_coder.c               |  210 +++
 src/liblzma/common/delta_coder.h               |   31 +
 src/liblzma/common/extra.c                     |   33 +
 src/liblzma/common/features.c                  |   70 +
 src/liblzma/common/filter_flags_decoder.c      |  382 +++++
 src/liblzma/common/filter_flags_encoder.c      |  359 +++++
 src/liblzma/common/index.c                     |  140 ++
 src/liblzma/common/info.c                      |  823 +++++++++++
 src/liblzma/common/init.c                      |   39 +
 src/liblzma/common/init_decoder.c              |   33 +
 src/liblzma/common/init_encoder.c              |   44 +
 src/liblzma/common/memory_limitter.c           |  200 +++
 src/liblzma/common/memory_usage.c              |  113 ++
 src/liblzma/common/metadata_decoder.c          |  555 +++++++
 src/liblzma/common/metadata_decoder.h          |   31 +
 src/liblzma/common/metadata_encoder.c          |  436 ++++++
 src/liblzma/common/metadata_encoder.h          |   30 +
 src/liblzma/common/next_coder.c                |   65 +
 src/liblzma/common/raw_common.c                |  175 +++
 src/liblzma/common/raw_common.h                |   31 +
 src/liblzma/common/raw_decoder.c               |  127 ++
 src/liblzma/common/raw_decoder.h               |   30 +
 src/liblzma/common/raw_encoder.c               |  124 ++
 src/liblzma/common/raw_encoder.h               |   30 +
 src/liblzma/common/stream_common.c             |   23 +
 src/liblzma/common/stream_common.h             |   28 +
 src/liblzma/common/stream_decoder.c            |  454 ++++++
 src/liblzma/common/stream_encoder_multi.c      |  460 ++++++
 src/liblzma/common/stream_encoder_single.c     |  220 +++
 src/liblzma/common/stream_flags_decoder.c      |  258 ++++
 src/liblzma/common/stream_flags_decoder.h      |   31 +
 src/liblzma/common/stream_flags_encoder.c      |   75 +
 src/liblzma/common/sysdefs.h                   |    1 +
 src/liblzma/common/version.c                   |   25 +
 src/liblzma/common/vli_decoder.c               |   69 +
 src/liblzma/common/vli_encoder.c               |   81 ++
 src/liblzma/common/vli_reverse_decoder.c       |   55 +
 src/liblzma/lz/Makefile.am                     |   63 +
 src/liblzma/lz/bt2.c                           |   27 +
 src/liblzma/lz/bt2.h                           |   31 +
 src/liblzma/lz/bt3.c                           |   29 +
 src/liblzma/lz/bt3.h                           |   31 +
 src/liblzma/lz/bt4.c                           |   30 +
 src/liblzma/lz/bt4.h                           |   31 +
 src/liblzma/lz/hc3.c                           |   30 +
 src/liblzma/lz/hc3.h                           |   31 +
 src/liblzma/lz/hc4.c                           |   31 +
 src/liblzma/lz/hc4.h                           |   31 +
 src/liblzma/lz/lz_decoder.c                    |  462 ++++++
 src/liblzma/lz/lz_decoder.h                    |  214 +++
 src/liblzma/lz/lz_encoder.c                    |  481 ++++++
 src/liblzma/lz/lz_encoder.h                    |  161 ++
 src/liblzma/lz/lz_encoder_private.h            |   40 +
 src/liblzma/lz/match_c.h                       |  401 +++++
 src/liblzma/lz/match_h.h                       |   69 +
 src/liblzma/lzma.pc.in                         |   11 +
 src/liblzma/lzma/Makefile.am                   |   43 +
 src/liblzma/lzma/lzma_common.h                 |  128 ++
 src/liblzma/lzma/lzma_decoder.c                |  844 +++++++++++
 src/liblzma/lzma/lzma_decoder.h                |   41 +
 src/liblzma/lzma/lzma_encoder.c                |  413 ++++++
 src/liblzma/lzma/lzma_encoder.h                |   35 +
 src/liblzma/lzma/lzma_encoder_features.c       |   59 +
 src/liblzma/lzma/lzma_encoder_getoptimum.c     |  893 ++++++++++++
 src/liblzma/lzma/lzma_encoder_getoptimumfast.c |  201 +++
 src/liblzma/lzma/lzma_encoder_init.c           |  245 ++++
 src/liblzma/lzma/lzma_encoder_presets.c        |   34 +
 src/liblzma/lzma/lzma_encoder_private.h        |  225 +++
 src/liblzma/lzma/lzma_literal.c                |   74 +
 src/liblzma/lzma/lzma_literal.h                |   74 +
 src/liblzma/rangecoder/Makefile.am             |   28 +
 src/liblzma/rangecoder/range_common.h          |   68 +
 src/liblzma/rangecoder/range_decoder.h         |  189 +++
 src/liblzma/rangecoder/range_encoder.c         |   46 +
 src/liblzma/rangecoder/range_encoder.h         |  317 ++++
 src/liblzma/simple/Makefile.am                 |   46 +
 src/liblzma/simple/arm.c                       |   76 +
 src/liblzma/simple/armthumb.c                  |   81 ++
 src/liblzma/simple/ia64.c                      |  117 ++
 src/liblzma/simple/powerpc.c                   |   80 +
 src/liblzma/simple/simple_coder.c              |  306 ++++
 src/liblzma/simple/simple_coder.h              |   68 +
 src/liblzma/simple/simple_private.h            |   86 ++
 src/liblzma/simple/sparc.c                     |   88 ++
 src/liblzma/simple/x86.c                       |  161 ++
 src/liblzma/subblock/Makefile.am               |   33 +
 src/liblzma/subblock/subblock_decoder.c        |  681 +++++++++
 src/liblzma/subblock/subblock_decoder.h        |   29 +
 src/liblzma/subblock/subblock_decoder_helper.c |   80 +
 src/liblzma/subblock/subblock_decoder_helper.h |   36 +
 src/liblzma/subblock/subblock_encoder.c        |  841 +++++++++++
 src/liblzma/subblock/subblock_encoder.h        |   28 +
 src/lzma/Makefile.am                           |   63 +
 src/lzma/alloc.c                               |  106 ++
 src/lzma/alloc.h                               |   42 +
 src/lzma/args.c                                |  566 +++++++
 src/lzma/args.h                                |   64 +
 src/lzma/error.c                               |  156 ++
 src/lzma/error.h                               |   67 +
 src/lzma/hardware.c                            |   99 ++
 src/lzma/hardware.h                            |   31 +
 src/lzma/help.c                                |  178 +++
 src/lzma/help.h                                |   32 +
 src/lzma/io.c                                  |  664 +++++++++
 src/lzma/io.h                                  |   60 +
 src/lzma/list.c                                |  477 ++++++
 src/lzma/main.c                                |  254 ++++
 src/lzma/options.c                             |  346 +++++
 src/lzma/options.h                             |   46 +
 src/lzma/private.h                             |   55 +
 src/lzma/process.c                             |  458 ++++++
 src/lzma/process.h                             |   30 +
 src/lzma/suffix.c                              |  145 ++
 src/lzma/suffix.h                              |   25 +
 src/lzma/util.c                                |  182 +++
 src/lzma/util.h                                |   32 +
 src/lzmadec/Makefile.am                        |   27 +
 src/lzmadec/lzmadec.c                          |  515 +++++++
 src/scripts/Makefile.am                        |   24 +
 src/scripts/lzdiff                             |   67 +
 src/scripts/lzdiff.1                           |   51 +
 src/scripts/lzgrep                             |  123 ++
 src/scripts/lzgrep.1                           |   61 +
 src/scripts/lzmore                             |   74 +
 src/scripts/lzmore.1                           |   55 +
 tests/Makefile.am                              |   43 +
 tests/test_block.c                             |   59 +
 tests/test_block_header.c                      |  352 +++++
 tests/test_check.c                             |   90 ++
 tests/test_filter_flags.c                      |  326 +++++
 tests/test_index.c                             |   43 +
 tests/test_info.c                              |  717 +++++++++
 tests/test_stream_flags.c                      |  191 +++
 tests/tests.h                                  |  148 ++
 240 files changed, 42513 insertions(+)
