Yann Collet
87968517f9
fixed decoding block checksum in lz4frame
2017-10-04 15:24:08 -07:00
Yann Collet
f6b31bf0d0
fix #404
...
static analyzer `cppcheck` complains about a shift-by-32 on a 32 bits value,
which is an undefined behavior.
However, the flagged code path is never triggered in 32-bits mode,
(actually, it's not even generated if DCE kicks in),
the shift-by-32 is necessarily performed on a 64-bits value.
While it doesn't change anything regarding lz4 code generation, for both 32 and 64 bits mode,
(can be checked by md5sum on the generated binary),
the shift has been rewritten in a way which should please this static analyzer,
since it now pretends to shift by 16 on 32-bits cpu (note : it doesn't matter since the code will not even be generated in this case).
Note : this is a blind fix, the new code has not been tested with cppcheck, because cppcheck only works on Windows.
Other static analyzer, such as scan-build, do not trigger this false positive.
2017-09-30 10:35:55 -07:00
Yann Collet
ceb868f442
minor lz4frame code refactor
...
try to improve code readability.
minor optimization on condition to preserve history.
2017-09-23 15:06:24 -07:00
Yann Collet
2a9af21d62
Merge pull request #402 from felixhandte/fix-dict-segfault
...
Fix dict segfault
2017-09-23 14:02:22 -07:00
W. Felix Handte
77f7245ea7
Fix Segfault When Copying Dict
...
dctx must have been initialized before we can copy the dictionary in.
2017-09-22 13:20:49 -07:00
Yann Collet
810e2ca27b
minor improvements to examples
...
cosmetic : better display
added optional variable MOREFLAGS
2017-09-11 10:25:47 -07:00
Yann Collet
e5bd29a2fb
made clang warnings fail (-Werror)
...
in order to catch them in CI tests
2017-09-10 14:35:16 -07:00
Yann Collet
a30cba08f4
fixed a bunch of -Wcomma warnings
...
reported by @rvandermeulen (#398 )
2017-09-10 14:32:38 -07:00
Yann Collet
a2b4f732f4
added -Wcomma to travisCI clang test
2017-09-10 14:23:18 -07:00
Yann Collet
b500c5282e
fix #397 : decompression failed when using a combination of extDict + low memory address
...
Reported and fixed by @jscheid
Note : we are missing a test case to include it in the CI
2017-09-07 12:48:24 -07:00
Yann Collet
00418f7611
bench : made decompression speed evaluation same time as compression
...
minor : slightly modified an example do avoid disabling a gcc warning through #pragma
2017-09-07 12:12:36 -07:00
Yann Collet
ee5332438b
minor Makefile fixes
2017-09-06 17:41:44 -07:00
Yann Collet
1ad9a36cfb
updated lib/README
...
clarifications, improved wording
2017-09-06 11:22:45 -07:00
Yann Collet
3d260f3522
complementary information for #394
2017-08-30 16:09:10 -07:00
Yann Collet
e3c71584ff
clarified documentation of streaming decompression functions
...
(synchronous bufferless mode)
answering questions by @jtbandes (#394 )
2017-08-30 15:42:04 -07:00
Yann Collet
69c3f4bb55
minor typo fix
2017-08-30 15:02:04 -07:00
Yann Collet
f212a10ae0
fixed FS-independent file order in /lib
...
identified by @bmwiedemann
2017-08-29 15:31:56 -07:00
Yann Collet
c4d6884cd8
build: source files sorted in a FS independent manner
...
to be more compatible with reproducible builds.
patch inspired by @bmwiedemann
2017-08-26 12:22:51 -07:00
Yann Collet
d2306b836e
updated NEWS with fixes
2017-08-25 14:13:29 -07:00
Yann Collet
2fa660bb06
Merge pull request #386 from lz4/parallelMake
...
`make test` compatible with parallel execution (`-j#`)
2017-08-25 11:23:30 -07:00
Yann Collet
a261f51ee3
removed fasttest from circleCI
2017-08-25 09:50:56 -07:00
Yann Collet
2ed3612477
removed test-fasttest
2017-08-24 18:30:00 -07:00
Yann Collet
4db65c1d99
Merge pull request #393 from terrelln/deprecate2
...
Don't use C++11 deprecation attribute with clang
2017-08-24 18:05:07 -07:00
Yann Collet
c04655bebf
fixed make recurrence from /tests
2017-08-24 17:58:13 -07:00
Yann Collet
517dd95d92
removed fasttest
2017-08-24 17:03:03 -07:00
Yann Collet
82ccdec2fb
minor : added header license
2017-08-24 16:59:47 -07:00
Yann Collet
3ec89940d5
Merge branch 'dev' into parallelMake
2017-08-24 16:46:19 -07:00
Nick Terrell
252ce14fd2
Don't use C++11 deprecation attribute with clang
...
Clang doesn't accept a C++11 attribute following `LZ4LIB_API`.
Use the GNU attribute instead.
2017-08-24 14:06:34 -07:00
Yann Collet
35a39e0e53
Merge pull request #392 from m-hennecke/fix-arm-openbsd
...
Fix: Add return statement to main function
2017-08-24 14:00:27 -07:00
Yann Collet
9fae51f9c2
Merge pull request #391 from tcpan/dev
...
FIX: added prefix to FORCE_INLINE to prevent redefinition error durin…
2017-08-24 11:52:17 -07:00
Yann Collet
bb0997b3dc
Merge pull request #390 from lz4/installVars
...
fixed man directory installation (#387 )
2017-08-24 11:45:17 -07:00
tcpan
f423d016cf
FIX: added prefix to FORCE_INLINE to prevent redefinition error during compilation when used with other libraries that define FORCE_INLINE
2017-08-24 10:14:20 -04:00
Markus Hennecke
2ff723b9ae
Fix: Add return statement to main function
2017-08-24 14:31:45 +02:00
Yann Collet
68040a76ad
fixed man directory installation ( #337 )
...
also : lz4c is now a symlink to lz4
2017-08-23 17:53:45 -07:00
Yann Collet
5637d8856f
make test is compatible with parallel execution (-j#)
...
each test section runs with its own set of files
2017-08-21 15:26:03 -07:00
Yann Collet
c10863b98e
fix : asan error in dctx, due to increased maximum frame header size, reported by Craig Young
2017-08-17 10:55:30 -07:00
Yann Collet
1e92bb0af0
Merge pull request #382 from lz4/installVars
...
better respect GNU standard Makefile conventions
2017-08-16 00:43:32 -07:00
Yann Collet
edb4343659
updated lz4frame manual
2017-08-15 16:58:12 -07:00
Yann Collet
a1f3a27e9b
Merge branch 'dev' into installVars and fixed conflicts
2017-08-15 16:57:00 -07:00
Yann Collet
af9d72b7f6
Merge pull request #383 from lz4/blockChecksum
...
Block checksum
2017-08-15 16:50:04 -07:00
Yann Collet
8593ba8831
Merge pull request #380 from lz4/dictID
...
Frame Dictionary API
2017-08-15 14:12:04 -07:00
Yann Collet
01cdbfb5fe
lz4c legacy commands are now enabled at runtime based on link/binary name "lz4c"
...
instead of selected at compilation time depending on a macro.
This design makes it possible to have a single binary which supports both modes.
An advantageous side effect is that when doing `make; make install`
no additional binary is created during `make install`
(it used to create `lz4c`, because `make` would only build `lz4`)
2017-08-14 16:56:05 -07:00
Yann Collet
731cff1208
fix minor markdown display issues
2017-08-14 15:18:47 -07:00
Yann Collet
aea7d521ae
better respect GNU standard Makefile conventions
...
supports lowercase directory variables
add an "Installation" section in README.md
added an INSTALL file
2017-08-14 15:13:23 -07:00
Yann Collet
930a692110
cli : restored command -BX to enable block checksum ( #322 )
2017-08-11 17:58:46 -07:00
Yann Collet
77f99d2922
restored block checksum capability at lz4frame API level
2017-08-11 17:46:52 -07:00
Yann Collet
228e26ee63
Merge pull request #378 from deymo/dev
...
Allow to predefine FORCE_INLINE macro.
2017-08-11 10:49:25 -07:00
Yann Collet
757497ae3d
implemented lz4frame decompression API
2017-08-10 16:53:57 -07:00
Yann Collet
4531637ecd
support dictionary compression with independent blocks
2017-08-10 12:12:53 -07:00
Yann Collet
8d597d62d5
fixed gcc prototype warning
2017-08-10 10:28:52 -07:00