Commit Graph

1916 Commits

Author SHA1 Message Date
Bing Xu
b192c86ba4 [amalgamation] lz4frame.c 2018-11-26 11:30:15 -08:00
Bing Xu
b4efd20ac8 Merge remote-tracking branch 'upstream/master' into bootcamp 2018-11-26 11:12:49 -08:00
Yann Collet
01d2a721d3
Merge pull request #606 from nh2/patch-1
lz4_Frame_format.md: Fix typo HexaBytes -> Exabytes
2018-11-25 13:38:37 -08:00
Niklas Hambüchen
ca45db8d4f
lz4_Frame_format.md: Fix typo HexaBytes -> Exabytes 2018-11-24 22:13:10 +01:00
Bing Xu
a7e8d394c0 [amalgamation] add test 2018-11-16 09:37:19 -08:00
Bing Xu
17f5071e72 Enable amalgamation of lz4hc.c and lz4.c 2018-11-15 22:24:25 -08:00
Yann Collet
1b819bfd63
Merge pull request #593 from felixhandte/lz4hc-publish-static
Extend Macro to Allow Publishing Experimental LZ4HC Functions in Dynamic Libraries
2018-10-16 15:33:58 -07:00
W. Felix Handte
6a2da13cb7 Make LZ4HC Experimental Functions Dynamically Publishable 2018-10-15 17:23:06 -07:00
W. Felix Handte
45dc195f84 Change Comment and Make LZ4LIB_STATIC_API Available to LZ4HC 2018-10-15 17:22:37 -07:00
Yann Collet
bf9bf80f8d updated code documentation
to clarify #589
2018-10-15 11:14:30 -07:00
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