Commit Graph

1227 Commits

Author SHA1 Message Date
Yann Collet
6226d52eab fixed minor Visual warning 2017-03-29 14:18:10 -07:00
Yann Collet
b88df6b1b0 Improved comments on LZ4F_getFrameInfo()
and added LZ4F_resetCompressionContext()
2017-03-29 12:51:08 -07:00
Yann Collet
fc31257ab2 added LZ4F_resetDecompressionContext() 2017-03-28 17:36:12 -07:00
Yann Collet
f0a7651fce Safer LZ4_getFrameInfo()
LZ4_getFrameInfo() is now guaranteed to keep dctx state clean,
even in case of failure.
2017-03-28 17:10:01 -07:00
Yann Collet
ab547a0ef8 Merge pull request #342 from iburinoc/isatty
Fix IS_CONSOLE returning 1 for NUL on windows
2017-03-27 13:32:51 -07:00
Sean Purcell
9b1f00056a Fix inline compile errors 2017-03-27 12:26:12 -07:00
Sean Purcell
afde27acf2 Fix IS_CONSOLE returning 1 for NUL on windows 2017-03-27 12:10:10 -07:00
Yann Collet
84246b974e Merge pull request #341 from iburinoc/exematch
Ignore extensions in exe name matching
2017-03-24 20:42:27 -07:00
Yann Collet
4567d0def5 Merge pull request #340 from lz4/optlz4opt
lz4opt
2017-03-24 17:10:45 -07:00
Sean Purcell
e9c3b14f29 Ignore extensions in exe name matching 2017-03-24 16:33:14 -07:00
Yann Collet
38362c1d65 Merge pull request #338 from ldv-alt/dev
Export deprecated symbols declared in lz4hc.h
2017-03-24 12:03:32 -07:00
Yann Collet
60b6d2907f improved level 10 speed for degenerated cases 2017-03-24 11:29:35 -07:00
Yann Collet
8f8fc52fcf Merge branch 'dev' into optlz4opt 2017-03-24 11:00:40 -07:00
Yann Collet
0863931a1c fixed API comment for LZ4F_createCompressionContext()
as reported by @nh2
2017-03-24 10:34:18 -07:00
Dmitry V. Levin
dab3590fce Export deprecated symbols declared in lz4hc.h
Commit 25b2435885 exported deprecated
symbols declared in lz4.h by marking all LZ4_DEPRECATED functions with
LZ4LIB_API attribute.  This change does the same with functions declared
in lz4hc.h file, thus extending the export to lz4hc.h.

As result, the following 17 deprecated functions are exported again:

LZ4_compressHC
LZ4_compressHC2
LZ4_compressHC2_continue
LZ4_compressHC2_limitedOutput
LZ4_compressHC2_limitedOutput_continue
LZ4_compressHC2_limitedOutput_withStateHC
LZ4_compressHC2_withStateHC
LZ4_compressHC_continue
LZ4_compressHC_limitedOutput
LZ4_compressHC_limitedOutput_continue
LZ4_compressHC_limitedOutput_withStateHC
LZ4_compressHC_withStateHC
LZ4_createHC
LZ4_freeHC
LZ4_resetStreamStateHC
LZ4_sizeofStreamStateHC
LZ4_slideInputBufferHC
2017-03-24 03:12:48 +00:00
Yann Collet
13f5cb2d5d Merge pull request #337 from ldv-alt/dev
cli: add GNU separator -- specifying that all following arguments are files
2017-03-22 22:00:07 -07:00
Dmitry V. Levin
b1daffc4e5 cli: add GNU separator -- specifying that all following arguments are files
This option is supported by other compressors with compatible cli,
so add it to lz4 as well for better compatibility.
2017-03-23 03:48:51 +00:00
Yann Collet
68044acfec Merge branch 'optlz4opt' of github.com:Cyan4973/lz4 into optlz4opt 2017-03-20 09:58:00 -07:00
Yann Collet
b8bc70022b minor refactor 2017-03-20 05:04:12 -07:00
Yann Collet
cea8f60df1 slight btopt speed improvement
removing a useless test
2017-03-20 02:33:02 -07:00
Yann Collet
f513020a6d slight btopt speed improvement
removing a useless test
2017-03-17 18:07:53 -07:00
Yann Collet
8bd32a17b1 made SET_PRICE macro more usable
previous version would use argument to also change target member.
Now, only values are transferred
2017-03-17 17:42:47 -07:00
Yann Collet
118b47f3d1 improved lz4opt speed (~4%) 2017-03-17 16:53:35 -07:00
Yann Collet
eff6166eb8 minor price function optimization 2017-03-17 15:51:21 -07:00
Yann Collet
0d073d4d28 added extern C for lz4.h static section
should make the file more compatible with C++ compiler, such as Visual or g++
2017-03-17 15:11:09 -07:00
Yann Collet
aae447fffd LZ4_compress_HC_continue_destSize() works as intended up to level 10
It's incompatible with btopt though,
so cLevel >= 11 feature much reduced performance (degraded mode)
2017-03-16 15:41:30 -07:00
Yann Collet
cd35f0d98c LZ4_compress_HC_destSize() uses LZ4HC_compress_generic() code path
Limits compression level to 10,
to remain compatible with Hash Chain.
2017-03-16 15:10:38 -07:00
Yann Collet
6b2a1b3606 updated lz4 version number 2017-03-16 02:24:46 -07:00
Yann Collet
430b7d32b3 created LZ4_HC_STATIC_LINKING_ONLY section
where are exposed new prototypes *_destSize()
2017-03-16 02:16:24 -07:00
Yann Collet
9144520dc9 fixed Visual compilation error
static const must be a "constant", like a macro
even if it can be determined at compile time ...
2017-03-15 18:59:26 -07:00
Yann Collet
a33bf89c62 fix #332 : do not modify /dev/null permissions 2017-03-15 17:26:50 -07:00
Yann Collet
e945a27f9c fix #333 : expose obsolete decoding functions
with deprecation warning.
notified by Chen Yufei
2017-03-14 21:21:54 -07:00
Yann Collet
e1b2b370e1 added Oleg @remittor contribution 2017-03-12 03:18:34 -07:00
Yann Collet
b9132bedcd Merge pull request #331 from ldv-alt/dev
Export only those symbols that are part of public API
2017-03-12 03:16:23 -07:00
Yann Collet
50fe87f13a Merge pull request #329 from remittor/dev-hc2
lz4hc: Add LZ4_compressHC_destSize
2017-03-12 03:15:10 -07:00
Dmitry V. Levin
883ebdcee0 Export only those symbols that are part of public API
Specify -fvisibility=hidden parameter when linking the shared library
using -fPIC, assuming that gcc >= 4 is used.

This change results to unexporting of the following 42 functions:

LZ4F_getErrorCode
LZ4_XXH32
LZ4_XXH32_canonicalFromHash
LZ4_XXH32_copyState
LZ4_XXH32_createState
LZ4_XXH32_digest
LZ4_XXH32_freeState
LZ4_XXH32_hashFromCanonical
LZ4_XXH32_reset
LZ4_XXH32_update
LZ4_XXH64
LZ4_XXH64_canonicalFromHash
LZ4_XXH64_copyState
LZ4_XXH64_createState
LZ4_XXH64_digest
LZ4_XXH64_freeState
LZ4_XXH64_hashFromCanonical
LZ4_XXH64_reset
LZ4_XXH64_update
LZ4_XXH_versionNumber
LZ4_compressHC
LZ4_compressHC2
LZ4_compressHC2_continue
LZ4_compressHC2_limitedOutput
LZ4_compressHC2_limitedOutput_continue
LZ4_compressHC2_limitedOutput_withStateHC
LZ4_compressHC2_withStateHC
LZ4_compressHC_continue
LZ4_compressHC_limitedOutput
LZ4_compressHC_limitedOutput_continue
LZ4_compressHC_limitedOutput_withStateHC
LZ4_compressHC_withStateHC
LZ4_compress_fast_force
LZ4_compress_forceExtDict
LZ4_createHC
LZ4_decompress_safe_forceExtDict
LZ4_freeHC
LZ4_resetStreamStateHC
LZ4_sizeofStreamStateHC
LZ4_slideInputBufferHC
LZ4_uncompress
LZ4_uncompress_unknownOutputSize
2017-03-10 23:35:30 +00:00
Dmitry V. Levin
25b2435885 Export deprecated symbols
Deprecated symbols are still a part of ABI and have to be exported,
so mark them with LZ4LIB_API attribute.
2017-03-10 23:35:30 +00:00
Dmitry V. Levin
7aeecbff71 Explicitly set visibility of public API functions when gcc is used
Windows builds already limit exporting of functions to those marked
with LZ4LIB_API tag.  The same behaviour could be achieved on other
platforms when a relatively fresh gcc is used.

This change assigns public visibility to all symbols marked with
LZ4LIB_API tag.  When the library is built in -fvisibility=hidden
mode, only these marked symbols will be exported.
2017-03-10 23:35:30 +00:00
Yann Collet
93b3b08ef6 Merge pull request #330 from inikep/dev
fix bench
2017-03-10 14:47:16 -08:00
Przemyslaw Skibinski
cb1671955a bench.c: respect LZ4_MAX_INPUT_SIZE limit 2017-03-10 20:49:25 +01:00
Przemyslaw Skibinski
517d446d7e Merge remote-tracking branch 'refs/remotes/lz4/dev' into dev 2017-03-10 20:43:53 +01:00
remittor
36842ebb19 lz4hc: Fix LZ4HC_compress_hashChain for backward compatibility 2017-03-09 12:19:24 +03:00
remittor
baa155088b lz4hc: Fix LZ4HC_compress_hashChain for full support destSize variant 2017-03-08 18:49:55 +03:00
remittor
66b26a389f tests: fuzzer: Add test for LZ4_compressHC_destSize 2017-03-08 11:13:28 +03:00
remittor
f007153e3f lz4hc: Add LZ4_compressHC_destSize and LZ4_compress_HC_continue_destSize 2017-03-08 11:11:15 +03:00
remittor
45b592b7ec lz4hc: Cleanup function LZ4HC_encodeSequence 2017-03-08 00:30:54 +03:00
remittor
534f8fa5d6 lz4hc: Cleanup function LZ4HC_compress_hashChain 2017-03-07 17:11:48 +03:00
Yann Collet
9141ada8de Merge pull request #328 from ldv-alt/dev
Fix test-lz4-basic
2017-03-05 16:15:08 -08:00
Dmitry V. Levin
0dfb0b9dad Fix test-lz4-basic
When no output filename is specified and stdout is not a terminal,
lz4 doesn't attempt to guess an output filename and uses stdout for
output.

This change fixes test-lz4-basic when run without a terminal
by specifying output filenames.
2017-03-05 23:28:25 +00:00
Yann Collet
97df1c9789 updated LICENSE
to avoid risks of confusion on GPLv2 licensed code.

GPLv2 code is not _intended_ to be integrated into 3rd party application,
but it can be used for that nonetheless (provided compliance with GPLv2 licence).
It just receives less focus and support into this direction.
2017-02-28 15:12:24 -08:00