Commit Graph

2211 Commits

Author SHA1 Message Date
gabrielstedman
55ab3c48ae Add --list option to display compressed file information. 2019-04-21 00:01:03 +01:00
Yann Collet
5f8ac02b77 cli: display a warning whenever default output is stdout while input != stdin
This behavior has been preserved for compatibility with existing ecosystem.
But it's problematic, as some environment start `lz4` without identifying stdout as console by default,
leading to a change of behavior for a same line of script.

A more sensible policy would be to default to stdout only when input is stdin.

Soft change for the time being : keep the behavior, just print a warning message.
User should prefer `-c` to explicitly select `stdout`.

Also : updated tests in Makefile to explicitly select `stdout` with `-c`.
2019-04-19 17:08:40 -07:00
Yann Collet
7a4e3b1fac bumped version number
to v1.9.1
2019-04-19 11:59:49 -07:00
Yann Collet
40e82df003
Merge pull request #684 from lz4/cxxlz4f
lz4frame: initializers compatibility with C++
2019-04-19 11:51:29 -07:00
Yann Collet
af35920c81 lz4frame: initializers compatibility with C++
fix #679, reported by @degski
2019-04-19 10:23:50 -07:00
Yann Collet
10b9e91227
Merge pull request #683 from lz4/fuzasan
fixed read-after input in LZ4_decompress_safe()
2019-04-18 20:57:56 -07:00
Yann Collet
213edce4be
Merge pull request #682 from lz4/visual
fix minor Visual warnings
2019-04-18 18:51:28 -07:00
Yann Collet
ae199124e5 fixed read-after input in LZ4_decompress_safe() 2019-04-18 18:50:51 -07:00
Yann Collet
4e4f1ad623 ensure list of names is large enough 2019-04-18 17:26:01 -07:00
Yann Collet
4790994568 fuzzer : reduced stack usage 2019-04-18 17:12:14 -07:00
Yann Collet
6cb084ed36 fuzzer: reduce stack usage to please Visual static analyzer 2019-04-18 17:01:36 -07:00
Yann Collet
0b876db6d4 address a few minor Visual warnings
and created target cxx17build
2019-04-18 16:07:16 -07:00
Yann Collet
5a6d72447a
Merge pull request #678 from lz4/decFast
Fix out-of-bound read in LZ4_decompress_fast()
2019-04-18 14:29:20 -07:00
Yann Collet
4f6de46f60 fix several minor static analyzer warnings 2019-04-18 12:05:50 -07:00
Yann Collet
3f558163ad fuzzer: fixed scan-build leak warning
the program exit(),
so there is no need to track and dealloc every buffer.
2019-04-18 10:38:51 -07:00
Yann Collet
8f0e744063 fuzzer: fix explicit cast for C++ 2019-04-17 15:44:14 -07:00
Yann Collet
5acfb15df0 re-enable FORCE_INLINE
was disabled for tests
2019-04-17 15:33:37 -07:00
Yann Collet
25d96f1e4d fix out-of-bound read within LZ4_decompress_fast()
and deprecate LZ4_decompress_fast(),
with deprecation warnings enabled by default.

Note that, as a consequence of the fix,
LZ4_decompress_fast is now __slower__ than LZ4_decompress_safe().
That's because, since it doesn't know the input buffer size,
it must progress more cautiously into the input buffer
to ensure to out-of-bound read.
2019-04-17 15:01:53 -07:00
Yann Collet
1ed69691a1 fuzzer: added tests to detect LZ4_decompress_fast() out of bound read 2019-04-17 13:31:24 -07:00
Yann Collet
b59fd652e8
Merge pull request #674 from nrgiii/dev
Fix
2019-04-17 10:43:38 -07:00
Norm Green
c329ab1d7b Merge branch 'fuzzerAix' into dev 2019-04-17 09:35:18 -07:00
Norm Green
1848ea5cbd Fix AIX errors/warnings 2019-04-17 09:20:09 -07:00
Yann Collet
5dde00e5d3 fixed version number for lz4hc 2019-04-16 20:46:04 -07:00
Yann Collet
131896ab9d
Merge pull request #673 from lz4/dev
minor update for v1.9.0
2019-04-16 13:55:28 -07:00
Yann Collet
d25b6d6401 minor benchmark update
was using wrong memory timing
2019-04-16 11:52:54 -07:00
Yann Collet
6fc763cd98 ensure consistent definition and usage of FREEMEM
as suggested by @sloutsky in #671
2019-04-16 11:26:03 -07:00
Yann Collet
108adfcb42 minor news update
for msys2
2019-04-16 11:20:31 -07:00
Yann Collet
f1226ac53d
Merge pull request #670 from lz4/dev
v1.9.0
2019-04-16 10:07:41 -07:00
Yann Collet
fc3176f6aa updated NEWS for v1.9.0 2019-04-15 17:30:31 -07:00
Yann Collet
a067441f56
Merge pull request #669 from lz4/fixframe
Fix lz4frame inefficiency
2019-04-15 15:32:03 -07:00
Yann Collet
920c988669 simplified output_directive 2019-04-15 14:13:10 -07:00
Yann Collet
55f6f0dd74 fix comma for pedantic 2019-04-15 11:22:25 -07:00
Yann Collet
0d4a974639 Merge branch 'dev' into fixframe 2019-04-15 11:18:33 -07:00
Yann Collet
ac5d2629c1 added a fake initialization to please an analyzer
which is unable to understand that the variable is necessarily initialized
in spite of an assert just before.
2019-04-15 11:17:35 -07:00
Yann Collet
ce0f316989 fix fuzzer tests on dirty context
context is no longer dirty after a failed compressed block.
Actually, all indexes are fine.
It remains compatible with continued streaming, and reset*_fast().
2019-04-15 11:12:54 -07:00
Yann Collet
474c17cdc4 unified limitedOutput_directive
between lz4.c and lz4hc.c .
was left in a strange state after the "amalgamation" patch.

Now only 3 directives remain,
same name across both implementations,
single definition place.

Might allow some light simplification due to reduced nb of states possible.
2019-04-15 11:09:56 -07:00
Yann Collet
799112b812 Merge branch 'dev' into fixframe 2019-04-15 10:46:48 -07:00
Yann Collet
98e5c0062f added more margin for canary in frametest 2019-04-15 10:44:46 -07:00
Yann Collet
1f4a412646 decompress*_fast() function do not generate deprecation warnings
they are classified as deprecated in the API documentation (lz4.h)
but do not yet trigger a warning,
to give time to existing applications to move away.

Also, the _fast() variants are still ~5% faster than the _safe() ones
after Dave's patch.
2019-04-15 10:33:40 -07:00
Yann Collet
481a37fe47 fixed lz4frame with linked blocks
when one block was not compressible,
it would tag the context as `dirty`,
resulting in compression automatically bailing out of all future blocks,
making the rest of the frame uncompressible.
2019-04-15 10:28:36 -07:00
Yann Collet
3ab916c6a2 frametest: removed uninitialized warning
was a false positive, but better remove it anyway
2019-04-15 10:14:36 -07:00
Yann Collet
9c41e5804e assert() the failed test
ensure canary remains within buffer limits
2019-04-15 02:11:59 -07:00
Yann Collet
c222dd9010 fixed frametest
One test could write a canary value out of bound
in exceptional conditions involving multiple flushes
triggered by -s3421 -t462948.
2019-04-15 01:54:40 -07:00
Yann Collet
3215069741 Merge branch 'dev' of github.com:Cyan4973/lz4 into dev 2019-04-13 15:55:33 -07:00
Yann Collet
749c3400bd fixed incorrect assertion condition
output can use the full length of output buffer
2019-04-13 15:55:06 -07:00
Yann Collet
cffde7eeb9
Merge pull request #668 from lz4/visual
Fix some Visual conversion warnings
2019-04-13 14:15:48 -07:00
Yann Collet
31763c59fc updated benchmark table 2019-04-12 18:00:43 -07:00
Yann Collet
63bfb64b80 and even more visual conversion warnings 2019-04-12 17:40:23 -07:00
Yann Collet
5fba3ac522
Merge pull request #667 from lz4/pipeMultiple
Fix combination -m -c
2019-04-12 17:29:44 -07:00
Yann Collet
8c2429ed1f some more Visual conversion warning 2019-04-12 17:06:53 -07:00