Vendor import of xz 5.8.3 (trimmed)
This commit is contained in:
@@ -1,3 +1,480 @@
|
||||
commit 4b73f2ec19a99ef465282fbce633e8deb33691b3
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-03-31 17:26:16 +0300
|
||||
|
||||
Bump version and soname for 5.8.3
|
||||
|
||||
src/liblzma/Makefile.am | 2 +-
|
||||
src/liblzma/api/lzma/version.h | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
commit 97b7440006d69a30048ff1ffc29fc7a0615e5d51
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-03-31 17:26:16 +0300
|
||||
|
||||
Add NEWS for 5.8.3
|
||||
|
||||
NEWS | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 54 insertions(+)
|
||||
|
||||
commit 8e1022cfb1d177e482e487c202a0ab43dee761a3
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-03-31 17:10:47 +0300
|
||||
|
||||
Translations: Run "make -C po update-po"
|
||||
|
||||
Update the PO files to contain the comment fix from 4e76651dbaf6.
|
||||
|
||||
po/ca.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
po/cs.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
po/da.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
po/de.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
po/eo.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
po/es.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
po/fi.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
po/fr.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
po/hr.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
po/hu.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
po/it.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
po/ka.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
po/ko.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
po/nl.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
po/pl.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
po/pt.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
po/pt_BR.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
po/ro.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
po/sr.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
po/sv.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
po/tr.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
po/uk.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
po/vi.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
po/zh_CN.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
po/zh_TW.po | 148 ++++++++++++++++++++++++++++++------------------------------
|
||||
25 files changed, 1850 insertions(+), 1850 deletions(-)
|
||||
|
||||
commit a3ea8832bec11128597c454f5d14d05ef6010e3f
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-03-29 20:29:40 +0300
|
||||
|
||||
Tests: Add a test for the lzma_index_prealloc() + lzma_index_append() bug
|
||||
|
||||
tests/test_index.c | 35 +++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 35 insertions(+)
|
||||
|
||||
commit c8c22869e780ff57c96b46939c3d79ff99395f87
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-03-29 19:11:21 +0300
|
||||
|
||||
liblzma: Fix a buffer overflow in lzma_index_append()
|
||||
|
||||
If lzma_index_decoder() was used to decode an Index that contained no
|
||||
Records, the resulting lzma_index had an invalid internal "prealloc"
|
||||
value. If lzma_index_append() was called on this lzma_index, too
|
||||
little memory would be allocated and a buffer overflow would occur.
|
||||
|
||||
While this combination of the API functions is meant to work, in the
|
||||
real-world apps this call sequence is rare or might not exist at all.
|
||||
|
||||
This bug is older than xz 5.0.0, so all stable releases are affected.
|
||||
|
||||
Reported-by: GitHub user christos-spearbit
|
||||
|
||||
src/liblzma/common/index.c | 21 +++++++++++++++++++++
|
||||
1 file changed, 21 insertions(+)
|
||||
|
||||
commit a37658bec72ed581a683b7498a75a70122b831b0
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-03-27 21:15:12 +0200
|
||||
|
||||
CMake: Adjust warnings with MSVC and clang-cl
|
||||
|
||||
When using clang-cl, avoid the long list of warning options used with
|
||||
GCC and Clang because, for MSVC compatibility, clang-cl's -Wall behaves
|
||||
like -Weverything.
|
||||
|
||||
Add warning options for MSVC. Use them with clang-cl too.
|
||||
|
||||
CMakeLists.txt | 21 ++++++++++++++++++++-
|
||||
1 file changed, 20 insertions(+), 1 deletion(-)
|
||||
|
||||
commit 9e499f714cade4beade31c86dcb0de9fc72d0562
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-03-27 21:14:50 +0200
|
||||
|
||||
CI: Don't disable individual warnings with clang-cl
|
||||
|
||||
.github/workflows/msvc.yml | 13 -------------
|
||||
1 file changed, 13 deletions(-)
|
||||
|
||||
commit 1e00837f72e0551ab73927642a8f61aad80c958d
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-03-22 12:02:48 +0200
|
||||
|
||||
CI: Add Haiku
|
||||
|
||||
.github/workflows/haiku.yml | 38 ++++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 38 insertions(+)
|
||||
|
||||
commit 8082851b7848ac32fea7bc7cfb84d9b3ef5537b0
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-03-22 11:30:20 +0200
|
||||
|
||||
Update THANKS
|
||||
|
||||
THANKS | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
commit 3cdd412bcea6bb5b4c5d41d2b4104230a5a9569c
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-03-22 11:29:30 +0200
|
||||
|
||||
CI: Update MSYS2
|
||||
|
||||
Closes: https://github.com/tukaani-project/xz/pull/213
|
||||
|
||||
.github/workflows/msys2.yml | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
commit e38a4af340ca9738923a511b7e35b6390c03ec50
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-03-22 11:29:23 +0200
|
||||
|
||||
CI: Update Solaris
|
||||
|
||||
Closes: https://github.com/tukaani-project/xz/pull/213
|
||||
|
||||
.github/workflows/solaris.yml | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
commit 40b1599217cc4f7cca6f48e0c32e709b9abd3639
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-03-22 11:29:14 +0200
|
||||
|
||||
CI: Update OpenBSD
|
||||
|
||||
Closes: https://github.com/tukaani-project/xz/pull/213
|
||||
|
||||
.github/workflows/openbsd.yml | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
commit 3aaf2f136c3fcf1140b9dfa584640778be789abc
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-03-22 11:29:08 +0200
|
||||
|
||||
CI: Update NetBSD
|
||||
|
||||
Closes: https://github.com/tukaani-project/xz/pull/213
|
||||
|
||||
.github/workflows/netbsd.yml | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
commit b5c26a249d21d293b441b21d22a1a81e7eec436a
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-03-22 11:28:58 +0200
|
||||
|
||||
CI: Update FreeBSD
|
||||
|
||||
Closes: https://github.com/tukaani-project/xz/pull/213
|
||||
|
||||
.github/workflows/freebsd.yml | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
commit 1a73f4f917f25d19ae557f49af2fddd9ef9f0a4a
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-03-22 11:28:47 +0200
|
||||
|
||||
CI: Update DragonFly BSD
|
||||
|
||||
Closes: https://github.com/tukaani-project/xz/pull/213
|
||||
|
||||
.github/workflows/dragonflybsd.yml | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
commit 5d61c5a3cf3be88b16179900ac5be82011a3a6bb
|
||||
Author: Salman Muin Kayser Chishti <13schishti@gmail.com>
|
||||
Date: 2026-02-28 09:10:46 +0000
|
||||
|
||||
CI: Upgrade GitHub Actions for Node 24 compatibility
|
||||
|
||||
Signed-off-by: Salman Muin Kayser Chishti <13schishti@gmail.com>
|
||||
Closes: https://github.com/tukaani-project/xz/pull/212
|
||||
|
||||
.github/workflows/ci.yml | 4 ++--
|
||||
.github/workflows/cifuzz.yml | 2 +-
|
||||
.github/workflows/coverity.yml | 2 +-
|
||||
.github/workflows/dragonflybsd.yml | 2 +-
|
||||
.github/workflows/freebsd.yml | 2 +-
|
||||
.github/workflows/msvc.yml | 2 +-
|
||||
.github/workflows/msys2.yml | 4 ++--
|
||||
.github/workflows/netbsd.yml | 2 +-
|
||||
.github/workflows/openbsd.yml | 2 +-
|
||||
.github/workflows/solaris.yml | 2 +-
|
||||
10 files changed, 12 insertions(+), 12 deletions(-)
|
||||
|
||||
commit 0ac3b93387c0191919ffa38de5f49f6b28164b35
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-03-25 19:03:00 +0200
|
||||
|
||||
xz: Prevent an integer overflow in --files and --files0
|
||||
|
||||
This requires a filename (or something that pretends to be a filename)
|
||||
of at least 2 GiB on a 32-bit platform, and that realloc() to
|
||||
SIZE_MAX / 2 + 1 bytes has succeeded.
|
||||
|
||||
Fixes: https://github.com/tukaani-project/xz/pull/218
|
||||
|
||||
src/xz/main.c | 10 ++++++++++
|
||||
1 file changed, 10 insertions(+)
|
||||
|
||||
commit 2faa141bdb47be94da2eae6df6f08858999a5911
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-03-23 23:43:56 +0200
|
||||
|
||||
tuklib_integer: Fix inefficient aligned_writeXXne
|
||||
|
||||
The __builtin_assume_aligned was applied to the wrong argument which
|
||||
made aligned writes worse on strict-align archs.
|
||||
|
||||
Aligned writes aren't used in liblzma, so this bug didn't matter in
|
||||
this package; tuklib_integer.h is meant to be usable elsewhere too.
|
||||
|
||||
src/common/tuklib_integer.h | 19 +++++++++----------
|
||||
1 file changed, 9 insertions(+), 10 deletions(-)
|
||||
|
||||
commit 685538271e3e213a18c5a925654aaa32c0b69f1e
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-03-22 10:22:09 +0200
|
||||
|
||||
Build: Remove -Wpre-c2x-compat
|
||||
|
||||
It makes clang -std=gnu23 noisy about bool. It's also noisy about
|
||||
[[__fallthrough__]] which is only used in C23 mode.
|
||||
|
||||
Reported-by: Collin Funk <collin.funk1@gmail.com>
|
||||
|
||||
CMakeLists.txt | 1 -
|
||||
configure.ac | 1 -
|
||||
2 files changed, 2 deletions(-)
|
||||
|
||||
commit 3a78a82bd380c26bc7afda7565216c3383cedefe
|
||||
Author: Collin Funk <collin.funk1@gmail.com>
|
||||
Date: 2026-03-15 23:24:59 -0700
|
||||
|
||||
xz: Don't fsync directories on QNX
|
||||
|
||||
On QNX calling fsync on a directory fails with EINVAL. This causes the
|
||||
following test failure:
|
||||
|
||||
$ cat tests/test_suffix.sh.log
|
||||
/data/home/root/xz-5.8.2/src/xz/.libs/lt-xz: suffix_temp: Synchronizing the directory of the file failed: Invalid argument
|
||||
Failed to decompress a file with a suffix set in raw format
|
||||
FAIL test_suffix.sh (exit status: 1)
|
||||
|
||||
Closes: https://github.com/tukaani-project/xz/pull/216
|
||||
|
||||
src/xz/file_io.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
commit bfc5f12a84a2a9df774ed16cd6eb58fd5ab24646
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-02-25 17:33:42 +0200
|
||||
|
||||
Update THANKS
|
||||
|
||||
THANKS | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
commit 5553509f1a53ee160ea3bc871c716a75ba0b1ea0
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-02-25 00:00:49 +0200
|
||||
|
||||
liblzma: Fix a copy-paste error in commented-out code
|
||||
|
||||
Fixes: https://github.com/dotnet/runtime/pull/124003#discussion_r2841960994
|
||||
Fixes: 96b663f67c0e ("liblzma: Refactor CRC comments.")
|
||||
|
||||
src/liblzma/check/crc32_fast.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
commit 4e76651dbaf6a0159f2117482d778ff69127fdea
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-02-24 18:34:19 +0200
|
||||
|
||||
Fix typos and grammar in comments and docs
|
||||
|
||||
Fixes: https://github.com/dotnet/runtime/pull/124003#discussion_r2789354505
|
||||
Fixes: https://github.com/dotnet/runtime/pull/124003#discussion_r2789354515
|
||||
Fixes: https://github.com/dotnet/runtime/pull/124003#discussion_r2820960196
|
||||
|
||||
po/Makevars | 2 +-
|
||||
src/common/tuklib_gettext.h | 4 ++--
|
||||
src/common/tuklib_mbstr_wrap.h | 4 ++--
|
||||
src/common/w32_application.manifest.comments.txt | 2 +-
|
||||
4 files changed, 6 insertions(+), 6 deletions(-)
|
||||
|
||||
commit cd8a6231d084ee9ce0a7a285f99dc5721d1f4317
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-02-24 18:24:29 +0200
|
||||
|
||||
tuklib_open_stdxxx: Fix a typo in macro name
|
||||
|
||||
It doesn't matter in this package, but it's good to fix it still.
|
||||
|
||||
Fixes: https://github.com/dotnet/runtime/pull/124003#discussion_r2782313660
|
||||
|
||||
src/common/tuklib_open_stdxxx.h | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
commit bf5d32f489fd7f33b2a629f9b78f5157301b49d8
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-02-24 18:22:25 +0200
|
||||
|
||||
CMake: Fix a wrong #define
|
||||
|
||||
HAVE_SYS_PARAM_H was misspelled HAVE_PARAM_H. This might have broken
|
||||
the build on systems where sysctl() is used to detect the amount of RAM
|
||||
or the number of processor cores/threads.
|
||||
|
||||
The cpuset code for FreeBSD doesn't need the macro it so it was removed.
|
||||
|
||||
Fixes: https://github.com/dotnet/runtime/pull/124003#discussion_r2782313680
|
||||
Fixes: https://github.com/dotnet/runtime/pull/124003#discussion_r2782313704
|
||||
Fixes: 7e3493d40eac ("Build: Add very limited experimental CMake support.")
|
||||
|
||||
cmake/tuklib_cpucores.cmake | 4 ++--
|
||||
cmake/tuklib_physmem.cmake | 2 +-
|
||||
2 files changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
commit b0f3b64a25bcd3a6a4cebc00866dea86590fac3e
|
||||
Author: Radek Zikmund <r.zikmund.rz@gmail.com>
|
||||
Date: 2026-02-12 15:24:15 +0100
|
||||
|
||||
liblzma/MSVC: Add a cast to fix a warning (C4057) with __cpuid()
|
||||
|
||||
__cpuid from MSVC (and also the old Intel ICC) use int[], while
|
||||
__get_cpuid from <cpuid.h> in GCC and Clang use unsigned int[].
|
||||
Adding a cast is the simplest fix.
|
||||
|
||||
Link: https://github.com/tukaani-project/xz/pull/208
|
||||
|
||||
src/liblzma/check/crc_x86_clmul.h | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
commit b51d67f4a95f41ae3a64973acc0e44b9f078512f
|
||||
Author: Radek Zikmund <r.zikmund.rz@gmail.com>
|
||||
Date: 2026-02-23 17:50:00 +0100
|
||||
|
||||
CMake: Guard script configure_file() calls with ENABLE_SCRIPTS
|
||||
|
||||
The configure_file() calls for xzdiff, xzgrep, xzmore, and xzless
|
||||
were running unconditionally within the if(UNIX) block, even when
|
||||
ENABLE_SCRIPTS was OFF. This would cause a build failure if the
|
||||
src/scripts/*.in files were not present. Deleting those files can
|
||||
simplify license compliance when the scripts aren't needed.
|
||||
|
||||
Move the foreach loop and related code inside if(ENABLE_SCRIPTS) guard
|
||||
so that configure_file() is only called when scripts are actually needed.
|
||||
This is mostly whitespace changes to adjust the indentation.
|
||||
|
||||
Co-authored-by: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Closes: https://github.com/tukaani-project/xz/pull/210
|
||||
|
||||
CMakeLists.txt | 68 ++++++++++++++++++++++++++++------------------------------
|
||||
1 file changed, 33 insertions(+), 35 deletions(-)
|
||||
|
||||
commit 1007bf08b5fddf088b3131e692210af4b4b7fd8c
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-02-04 12:28:07 +0200
|
||||
|
||||
Translations: Add Arabic man page translations
|
||||
|
||||
Rendering of bidirectional text from man pages might not work perfectly
|
||||
in all cases.
|
||||
|
||||
po4a/ar.po | 3905 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
po4a/po4a.conf | 2 +-
|
||||
2 files changed, 3906 insertions(+), 1 deletion(-)
|
||||
|
||||
commit 54147ad65af12d9e4f60a8ce59094a8a30ad5919
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-01-25 13:51:09 +0200
|
||||
|
||||
Update THANKS
|
||||
|
||||
THANKS | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
commit d6bdb446f8da47ac2af8c309de8e7c80beae850e
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-01-25 13:30:46 +0200
|
||||
|
||||
liblzma: Add the "License" property to liblzma.pc
|
||||
|
||||
The "License" property is a pkgconf extension. See pc(5).
|
||||
pkg-config 0.29.2 (2017) ignores unrecognized properties so this
|
||||
commit shouldn't create compatibility issues.
|
||||
|
||||
pkgconf provides bomtool which uses the "License" property to generate
|
||||
a software bill of materials. In pkgconf.git there is spdxtool for the
|
||||
same task but with different output format.
|
||||
|
||||
The pkgconf extensions "Copyright" and "Maintainer" would also be
|
||||
used by bomtool and spdxtool, but I don't want to add those properties
|
||||
at least for now.
|
||||
|
||||
Co-authored-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
|
||||
Closes: https://github.com/tukaani-project/xz/pull/178
|
||||
|
||||
src/liblzma/liblzma.pc.in | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
commit 687bd3e30fbe54ae906d06a93e7f2aa8b121aa7b
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-01-25 12:14:46 +0200
|
||||
|
||||
Update THANKS
|
||||
|
||||
THANKS | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
commit b80b6343a4b7df6bf56dcf07715f9f536af93306
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2026-01-25 12:14:25 +0200
|
||||
|
||||
liblzma: Don't try to use x86-64 inline asm on ARM64EC
|
||||
|
||||
Reported-by: Chase Knowlden
|
||||
Fixes: https://github.com/tukaani-project/xz/issues/206
|
||||
|
||||
src/liblzma/rangecoder/range_decoder.h | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
commit 47fb9d84c052912ca10dc9843cb296c860b182ac
|
||||
Author: Pino Toscano <toscano.pino@tiscali.it>
|
||||
Date: 2025-12-30 19:59:55 +0100
|
||||
|
||||
Autotools: Enable x86 assembler on Hurd by default
|
||||
|
||||
It has been enabled in Debian GNU/Hurd for 15+ years with no issues.
|
||||
Hence, enable it by default also in the upstream sources.
|
||||
|
||||
The CMake build already had it enabled.
|
||||
|
||||
Link: https://salsa.debian.org/debian/xz-utils/-/blob/debian/5.8.2-2/debian/rules?ref_type=tags#L98
|
||||
Closes: https://github.com/tukaani-project/xz/pull/204
|
||||
|
||||
configure.ac | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
commit 9f4c5a0d4817c9c7011cdfd00cfbe0ddda66a455
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2025-12-17 14:49:12 +0200
|
||||
|
||||
doc/SHA256SUMS: Add 5.8.2
|
||||
|
||||
doc/SHA256SUMS | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
commit 3d078b52adbff566ccfc51067dfbf742ecf3ef86
|
||||
Author: Lasse Collin <lasse.collin@tukaani.org>
|
||||
Date: 2025-12-17 13:36:42 +0200
|
||||
|
||||
@@ -44,6 +44,7 @@ has been important. :-)
|
||||
- Bruce Stark
|
||||
- Cary Lewis
|
||||
- Charles Wilson
|
||||
- Chase Knowlden
|
||||
- Chenxi Mao
|
||||
- Chien Wong
|
||||
- Chris Donawa
|
||||
@@ -175,6 +176,7 @@ has been important. :-)
|
||||
- Nathan Moinvaziri
|
||||
- Nelson H. F. Beebe
|
||||
- Nicholas Jackson
|
||||
- Nobuhiro Iwamatsu
|
||||
- Ole André Vadla Ravnås
|
||||
- Orange Tsai
|
||||
- Orgad Shaneh
|
||||
@@ -190,7 +192,9 @@ has been important. :-)
|
||||
- Peter Seiderer
|
||||
- Pierre-Yves Martin
|
||||
- Pilorz Wojciech
|
||||
- Pino Toscano
|
||||
- Pippijn van Steenhoven
|
||||
- Radek Zikmund
|
||||
- Rafał Mużyło
|
||||
- Rainer Müller
|
||||
- Ralf Wildenhues
|
||||
@@ -205,6 +209,7 @@ has been important. :-)
|
||||
- Rui Paulo
|
||||
- Ryan Colyer
|
||||
- Ryan Young
|
||||
- Salman Muin Kayser Chishti
|
||||
- Sam James
|
||||
- Scott McAllister
|
||||
- Sean Fenian
|
||||
|
||||
@@ -41,11 +41,11 @@
|
||||
#define N_(msgid) msgid
|
||||
|
||||
// Optional: Strings that are word wrapped using tuklib_mbstr_wrap may be
|
||||
// marked with W_("foo) in the source code. xgettext can then add a comment
|
||||
// marked with W_("foo") in the source code. xgettext can then add a comment
|
||||
// to all such strings to inform translators. The following option needs to
|
||||
// be added to XGETTEXT_OPTIONS in po/Makevars or in an equivalent place:
|
||||
//
|
||||
// '--keyword=W_:1,"This is word wrapped at spaces. The Unicode character U+00A0 works as a non-breaking space. Tab (\t) is interpret as a zero-width space (the tab itself is not displayed); U+200B is NOT supported. Manual word wrapping with \n is supported but requires care."'
|
||||
// '--keyword=W_:1,"This is word wrapped at spaces. The Unicode character U+00A0 works as a non-breaking space. Tab (\t) is interpreted as a zero-width space (the tab itself is not displayed); U+200B is NOT supported. Manual word wrapping with \n is supported but requires care."'
|
||||
//
|
||||
// NOTE: The double-quotes in the --keyword argument above must be passed to
|
||||
// xgettext as is, thus one needs the single-quotes in Makevars.
|
||||
|
||||
@@ -643,11 +643,10 @@ write64le(uint8_t *buf, uint64_t num)
|
||||
//
|
||||
// __builtin_assume_aligned is support by GCC >= 4.7 and clang >= 3.6.
|
||||
#ifdef HAVE___BUILTIN_ASSUME_ALIGNED
|
||||
# define tuklib_memcpy_aligned(dest, src, size) \
|
||||
memcpy(dest, __builtin_assume_aligned(src, size), size)
|
||||
# define tuklib_assume_aligned(ptr, align) \
|
||||
__builtin_assume_aligned(ptr, align)
|
||||
#else
|
||||
# define tuklib_memcpy_aligned(dest, src, size) \
|
||||
memcpy(dest, src, size)
|
||||
# define tuklib_assume_aligned(ptr, align) (ptr)
|
||||
# ifndef TUKLIB_FAST_UNALIGNED_ACCESS
|
||||
# define TUKLIB_USE_UNSAFE_ALIGNED_READS 1
|
||||
# endif
|
||||
@@ -662,7 +661,7 @@ aligned_read16ne(const uint8_t *buf)
|
||||
return *(const uint16_t *)buf;
|
||||
#else
|
||||
uint16_t num;
|
||||
tuklib_memcpy_aligned(&num, buf, sizeof(num));
|
||||
memcpy(&num, tuklib_assume_aligned(buf, sizeof(num)), sizeof(num));
|
||||
return num;
|
||||
#endif
|
||||
}
|
||||
@@ -676,7 +675,7 @@ aligned_read32ne(const uint8_t *buf)
|
||||
return *(const uint32_t *)buf;
|
||||
#else
|
||||
uint32_t num;
|
||||
tuklib_memcpy_aligned(&num, buf, sizeof(num));
|
||||
memcpy(&num, tuklib_assume_aligned(buf, sizeof(num)), sizeof(num));
|
||||
return num;
|
||||
#endif
|
||||
}
|
||||
@@ -690,7 +689,7 @@ aligned_read64ne(const uint8_t *buf)
|
||||
return *(const uint64_t *)buf;
|
||||
#else
|
||||
uint64_t num;
|
||||
tuklib_memcpy_aligned(&num, buf, sizeof(num));
|
||||
memcpy(&num, tuklib_assume_aligned(buf, sizeof(num)), sizeof(num));
|
||||
return num;
|
||||
#endif
|
||||
}
|
||||
@@ -702,7 +701,7 @@ aligned_write16ne(uint8_t *buf, uint16_t num)
|
||||
#ifdef TUKLIB_USE_UNSAFE_TYPE_PUNNING
|
||||
*(uint16_t *)buf = num;
|
||||
#else
|
||||
tuklib_memcpy_aligned(buf, &num, sizeof(num));
|
||||
memcpy(tuklib_assume_aligned(buf, sizeof(num)), &num, sizeof(num));
|
||||
#endif
|
||||
return;
|
||||
}
|
||||
@@ -714,7 +713,7 @@ aligned_write32ne(uint8_t *buf, uint32_t num)
|
||||
#ifdef TUKLIB_USE_UNSAFE_TYPE_PUNNING
|
||||
*(uint32_t *)buf = num;
|
||||
#else
|
||||
tuklib_memcpy_aligned(buf, &num, sizeof(num));
|
||||
memcpy(tuklib_assume_aligned(buf, sizeof(num)), &num, sizeof(num));
|
||||
#endif
|
||||
return;
|
||||
}
|
||||
@@ -726,7 +725,7 @@ aligned_write64ne(uint8_t *buf, uint64_t num)
|
||||
#ifdef TUKLIB_USE_UNSAFE_TYPE_PUNNING
|
||||
*(uint64_t *)buf = num;
|
||||
#else
|
||||
tuklib_memcpy_aligned(buf, &num, sizeof(num));
|
||||
memcpy(tuklib_assume_aligned(buf, sizeof(num)), &num, sizeof(num));
|
||||
#endif
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -28,10 +28,10 @@
|
||||
TUKLIB_DECLS_BEGIN
|
||||
|
||||
/// One or more output lines exceeded right_margin.
|
||||
/// This only a warning; everything was still printed successfully.
|
||||
/// This is only a warning; everything was still printed successfully.
|
||||
#define TUKLIB_WRAP_WARN_OVERLONG 0x01
|
||||
|
||||
/// Error writing to to the output FILE. The error flag in the FILE
|
||||
/// Error writing to the output FILE. The error flag in the FILE
|
||||
/// should have been set as well.
|
||||
#define TUKLIB_WRAP_ERR_IO 0x02
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
#include "tuklib_common.h"
|
||||
TUKLIB_DECLS_BEGIN
|
||||
|
||||
#define tuklib_open_stdxx TUKLIB_SYMBOL(tuklib_open_stdxxx)
|
||||
#define tuklib_open_stdxxx TUKLIB_SYMBOL(tuklib_open_stdxxx)
|
||||
extern void tuklib_open_stdxxx(int err_status);
|
||||
|
||||
TUKLIB_DECLS_END
|
||||
|
||||
@@ -37,7 +37,7 @@ This is useful for programs that use main():
|
||||
* UTF-8 allows such programs to access files whose names contain
|
||||
characters that don't exist in the current legacy code page.
|
||||
However, filenames on Windows may contain unpaired surrogates
|
||||
(invalid UTF-16). Such files cannot be accesses even with the
|
||||
(invalid UTF-16). Such files cannot be accessed even with the
|
||||
UTF-8 code page.
|
||||
|
||||
* UTF-8 avoids a security issue in command line argument handling:
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
#define LZMA_VERSION_MINOR 8
|
||||
|
||||
/** \brief Patch version number of the liblzma release. */
|
||||
#define LZMA_VERSION_PATCH 2
|
||||
#define LZMA_VERSION_PATCH 3
|
||||
|
||||
/**
|
||||
* \brief Version stability marker
|
||||
|
||||
@@ -182,7 +182,7 @@ lzma_crc32(const uint8_t *buf, size_t size, uint32_t crc)
|
||||
// See crc32_dispatch(). This would be the alternative which uses
|
||||
// locking and doesn't use crc32_dispatch(). Note that on Windows
|
||||
// this method needs Vista threads.
|
||||
mythread_once(crc64_set_func);
|
||||
mythread_once(crc32_set_func);
|
||||
#endif
|
||||
*/
|
||||
return crc32_func(buf, size, crc);
|
||||
|
||||
@@ -344,7 +344,7 @@ is_arch_extension_supported(void)
|
||||
#if defined(_MSC_VER)
|
||||
// This needs <intrin.h> with MSVC. ICC has it as a built-in
|
||||
// on all platforms.
|
||||
__cpuid(r, 1);
|
||||
__cpuid((int *)r, 1);
|
||||
#elif defined(HAVE_CPUID_H)
|
||||
// Compared to just using __asm__ to run CPUID, this also checks
|
||||
// that CPUID is supported and saves and restores ebx as that is
|
||||
|
||||
@@ -433,6 +433,26 @@ lzma_index_prealloc(lzma_index *i, lzma_vli records)
|
||||
if (records > PREALLOC_MAX)
|
||||
records = PREALLOC_MAX;
|
||||
|
||||
// If index_decoder.c calls us with records == 0, it's decoding
|
||||
// an Index that has no Records. In that case the decoder won't call
|
||||
// lzma_index_append() at all, and i->prealloc isn't used during
|
||||
// the Index decoding either.
|
||||
//
|
||||
// Normally the first lzma_index_append() call from the Index decoder
|
||||
// would reset i->prealloc to INDEX_GROUP_SIZE. With no Records,
|
||||
// lzma_index_append() isn't called and the resetting of prealloc
|
||||
// won't occur either. Thus, if records == 0, use the default value
|
||||
// INDEX_GROUP_SIZE instead.
|
||||
//
|
||||
// NOTE: lzma_index_append() assumes i->prealloc > 0. liblzma <= 5.8.2
|
||||
// didn't have this check and could set i->prealloc = 0, which would
|
||||
// result in a buffer overflow if the application called
|
||||
// lzma_index_append() after decoding an empty Index. Appending
|
||||
// Records after decoding an Index is a rare thing to do, but
|
||||
// it is supposed to work.
|
||||
if (records == 0)
|
||||
records = INDEX_GROUP_SIZE;
|
||||
|
||||
i->prealloc = (size_t)(records);
|
||||
return;
|
||||
}
|
||||
@@ -685,6 +705,7 @@ lzma_index_append(lzma_index *i, const lzma_allocator *allocator,
|
||||
++g->last;
|
||||
} else {
|
||||
// We need to allocate a new group.
|
||||
assert(i->prealloc > 0);
|
||||
g = lzma_alloc(sizeof(index_group)
|
||||
+ i->prealloc * sizeof(index_record),
|
||||
allocator);
|
||||
|
||||
@@ -8,6 +8,7 @@ includedir=@includedir@
|
||||
|
||||
Name: liblzma
|
||||
Description: General purpose data compression library
|
||||
License: 0BSD
|
||||
URL: @PACKAGE_URL@
|
||||
Version: @PACKAGE_VERSION@
|
||||
Cflags: -I${includedir}
|
||||
|
||||
@@ -45,6 +45,7 @@
|
||||
// and different processors. Overall 0x1F0 seems to be the best choice.
|
||||
#ifndef LZMA_RANGE_DECODER_CONFIG
|
||||
# if defined(__x86_64__) && !defined(__ILP32__) \
|
||||
&& !defined(__arm64ec__) && !defined(_M_ARM64EC) \
|
||||
&& !defined(__NVCOMPILER) \
|
||||
&& (defined(__GNUC__) || defined(__clang__))
|
||||
# define LZMA_RANGE_DECODER_CONFIG 0x1F0
|
||||
|
||||
+2
-1
@@ -493,8 +493,9 @@ io_sync_dest(file_pair *pair)
|
||||
return true;
|
||||
}
|
||||
|
||||
#if !defined(TUKLIB_DOSLIKE) && !defined(_AIX)
|
||||
#if !defined(TUKLIB_DOSLIKE) && !defined(_AIX) && !defined(__QNX__)
|
||||
// On AIX, this would fail with EBADF.
|
||||
// On QNX, this would fail with EINVAL.
|
||||
if (fsync(pair->dir_fd)) {
|
||||
message_error(_("%s: Synchronizing the directory of "
|
||||
"the file failed: %s"),
|
||||
|
||||
@@ -134,6 +134,16 @@ read_name(const args_info *args)
|
||||
// at least for one character to allow terminating the string
|
||||
// with '\0'.
|
||||
if (pos == size) {
|
||||
// Prevent an integer overflow. This is only possible
|
||||
// if allocating SIZE_MAX / 2 + 1 bytes has already
|
||||
// succeeded.
|
||||
//
|
||||
// Use ENOMEM to for the error message to avoid adding
|
||||
// a translatable string that will (almost) never be
|
||||
// displayed in practice.
|
||||
if (size > SIZE_MAX / 2)
|
||||
message_fatal("%s", strerror(ENOMEM));
|
||||
|
||||
size *= 2;
|
||||
name = xrealloc(name, size);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user