Commit Graph

1956 Commits

Author SHA1 Message Date
Yann Collet
5bd197e838
Merge pull request #583 from khabinov/stream-dirty-context-hc
Adding information about dirty context for _HC_ family of functions
2018-10-11 10:33:54 -07:00
Oleg Khabinov
f27ea0774e Adding information about dirty context for _HC_ family of functions 2018-10-10 10:33:04 -07:00
Yann Collet
df6d00ede5
Merge pull request #592 from lz4/compressEnd
fix LZ4F_compressEnd()
2018-10-09 15:37:55 -07:00
Yann Collet
6902fa4892 fixed #589
following recommendations by @raggi.

The fix is slightly different, but achieves the same goal,
and is backed by a test tool which proves that it works
(generates the error before the patch, no longer after the patch).
2018-10-09 14:37:51 -07:00
Yann Collet
e07a37d712 added a test for LZ4F_compressEnd()
which actively tries to make it write out of bound.
For this scenario to be possible,
it's necessary to set dstCapacity < LZ4F_compressBound()

When a compression operation fails,
the CCtx context is left in an undefined state,
therefore compression cannot resume.
As a consequence :
- round trip tests must be aborted, since there is nothing valid to decompress
- most users avoid this situation, by ensuring that dstCapacity >= LZ4F_compressBound()

For these reasons, this use case was poorly tested up to now.
2018-10-09 14:25:18 -07:00
Yann Collet
637245958f
Merge pull request #588 from khabinov/stream-dirty-followups
Some followups and renamings
2018-10-09 13:14:00 -07:00
Yann Collet
a963621eb0
Merge pull request #586 from blezsan/custom_block_sizes
support custom block sizes
2018-10-02 10:37:20 -07:00
Blaise Sanouillet
294293d899 support custom block sizes: fix memory leak to make CI builds happy 2018-10-02 05:38:30 -07:00
Oleg Khabinov
28eb88d988 Some followups and renamings 2018-10-01 15:19:45 -07:00
Blaise Sanouillet
d4703852b1 support custom block sizes: remove unneeded fudging, fix leaked filehandles, other nits 2018-10-01 05:22:50 -07:00
Blaise Sanouillet
7f18842244 Merge branch 'dev' into custom_block_sizes 2018-10-01 05:09:19 -07:00
Yann Collet
b18b6e53e1
Merge pull request #587 from lz4/hintbug
fixed improper hint
2018-09-28 16:58:01 -07:00
Yann Collet
48cd25a4b3
Merge pull request #580 from khabinov/stream-error-flag-initCheck
Rename initCheck to dirtyContext and use it in LZ4_resetStream_fast()
2018-09-28 15:58:22 -07:00
Yann Collet
21120549a7 fixed improper hint
when LZ4F_decompress() decodes an uncompressed block,
it provides an incorrect hint for next block
when frame checksum is enabled and block checksum is not.

Impact is low : the hint is just an hint,
the decoder works whatever the amount of input provided.

But the assumption that each call to LZ4F_decompress()
would generate just one complete block if input size hint was respected
was broken by this error.
2018-09-28 14:57:50 -07:00
Oleg Khabinov
f2ae385c2f Rename initCheck to dirtyContext and use it in LZ4_resetStream_fast() to check if full reset is needed. 2018-09-28 14:55:05 -07:00
Blaise Sanouillet
4d9435f1ee support custom block sizes: fix const 2018-09-28 10:00:38 -07:00
Blaise Sanouillet
32501603c7 support custom block sizes: fix usage message & remove unused functions 2018-09-28 09:53:14 -07:00
Blaise Sanouillet
718d16ef29 support custom block sizes - fix types 2018-09-28 09:02:36 -07:00
Blaise Sanouillet
64ad395d27 support custom block sizes 2018-09-28 08:02:49 -07:00
Yann Collet
cb917827f9
Merge pull request #578 from lz4/support128bit
Support for 128bit pointers like AS400
2018-09-26 13:57:09 -07:00
Yann Collet
c4c19c74b8 changed LZ4_streamDecode member order
to reduce memory usage on 128-bits systems
2018-09-25 14:43:19 -07:00
Yann Collet
21277d27ec
Merge pull request #581 from lz4/cppcheck
Added cppcheck static analyzer test
2018-09-19 13:48:46 -07:00
Yann Collet
b2215f2a89 tried to clean another bunch of cppcheck warnings
so "funny" thing with cppcheck
is that no 2 versions give the same list of warnings.

On Mac, I'm using v1.81, which had all warnings fixed.
On Travis CI, it's v1.61, and it complains about a dozen more/different things.
On Linux, it's v1.72, and it finds a completely different list of a half dozen warnings.

Some of these seems to be bugs/limitations in cppcheck itself.
The TravisCI version v1.61 seems unable to understand %zu correctly, and seems to assume it means %u.
2018-09-19 12:12:49 -07:00
Yann Collet
e75d04791f Merge branch 'dev' into cppcheck 2018-09-18 16:55:17 -07:00
Yann Collet
da6f1d24d6
Merge pull request #579 from lz4/xxhash
updated xxhash to latest version
2018-09-18 16:54:25 -07:00
Yann Collet
5a10ed2f7b added cppcheck
as Makefile target and Travis CI test.

Fixed last cppcheck warnings in tests and examples
2018-09-18 16:52:02 -07:00
Yann Collet
697bd904b2 fixed minor cppcheck warnings in examples 2018-09-18 16:30:31 -07:00
Yann Collet
e34a27d291 fixed minor cppcheck warnings in programs 2018-09-18 16:08:17 -07:00
Yann Collet
8bea19d57c fixed minor cppcheck warnings in lib 2018-09-18 15:51:26 -07:00
Yann Collet
c3397520a1 updated xxhash to latest version 2018-09-18 12:14:26 -07:00
Yann Collet
6381d828fd increase size of LZ4 contexts for 128-bit systems 2018-09-17 17:31:57 -07:00
Yann Collet
7b9edd60a0 Merge branch 'dev' into support128bit 2018-09-17 17:07:00 -07:00
Yann Collet
dea044a485
Merge pull request #575 from lz4/apiDoc
unpublish static-only functions
2018-09-17 17:06:34 -07:00
Yann Collet
cb2fb479ef increase lz4hc context size as constant for 128-bit systems 2018-09-17 17:05:17 -07:00
Yann Collet
6103b4c9b4 use byU32 mode for any pointer > 32-bit
including 128-bit, like IBM AS-400
2018-09-14 15:27:48 -07:00
Yann Collet
c820480e12
Merge pull request #574 from lz4/enumComma
avoid final trailing comma for enum lists
2018-09-14 13:51:43 -07:00
Yann Collet
d2f5716c5d
Merge pull request #573 from laffer1/laffer1-pkgconfig-mnbsd
FIx pkgconfig file installation on MidnightBSD
2018-09-14 10:11:49 -07:00
Yann Collet
e8b08f9fbd updated build doc 2018-09-13 16:14:00 -07:00
Yann Collet
a803230f67 unpublish static-only function
these functions are now unpublished in dll by default.
One needs to opt-in, using macro LZ4_PUBLISH_STATIC_FUNCTIONS.

used this opportunity to update a bunch of api comments in lz4.h
2018-09-13 16:02:11 -07:00
Yann Collet
86023f01f2 avoid final trailing comma for enum lists
as detected in #485 by @JoachimSchneider.

Refactored the c_standards tests
so that these issues get automatically detected in CI tests.
2018-09-13 14:29:41 -07:00
Yann Collet
4a84836c13 removed image from repository
used for v1.8.2 announcement
2018-09-12 10:50:37 -07:00
Yann Collet
879f3dae11 fixed NEWS for v1.8.3 2018-09-12 10:48:19 -07:00
Lucas Holt
de4667011a
FIx pkgconfig file installation on MidnightBSD 2018-09-11 21:18:43 -04:00
Yann Collet
641b453d9d
Merge pull request #572 from lz4/dev
v1.8.3
2018-09-11 12:52:06 -07:00
Yann Collet
08d347b5b2 updated NEWS for v1.8.3 release 2018-09-11 10:33:39 -07:00
Yann Collet
90865b80aa Merge branch 'dev' of github.com:Cyan4973/lz4 into dev 2018-09-11 10:01:33 -07:00
Yann Collet
82a693c136
Merge pull request #571 from lz4/mflimit
clarify constant MFLIMIT
2018-09-11 10:01:23 -07:00
Yann Collet
6d32240b2e clarify constant MFLIMIT
and separate it from MATCH_SAFEGUARD_DISTANCE.

While both constants have same value,
they do not seve same purpose, hence should not be confused.
2018-09-11 10:00:13 -07:00
Yann Collet
86ad9131db Merge pull request #569 from lz4/circle2
Migrate CircleCI tests from 1.0 towards 2.0
2018-09-11 09:56:40 -07:00
Yann Collet
f9725fdc46
Merge pull request #570 from lz4/partialDecode
Partial decode
2018-09-11 09:55:31 -07:00