Commit Graph

5974 Commits

Author SHA1 Message Date
Bartosz Szreder
5c5c476338 Prevent deadlock on malloc() failure. 2018-11-08 10:29:31 +01:00
Yann Collet
f6eb12084d
Merge pull request #1405 from pitrou/allow_cmake_debug_builds
Allow creating debug builds with CMake
2018-11-06 13:58:50 -08:00
Antoine Pitrou
2186fbcf67 Allow creating debug builds with CMake
Only set the build type to Release if the user didn't select any.
See discussion in https://github.com/facebook/zstd/pull/1278#issuecomment-436327923
and below.
2018-11-06 21:24:29 +01:00
Yann Collet
e0701d3c5d
Merge pull request #1404 from facebook/T36302429
fixed T36302471
2018-11-06 11:53:20 -08:00
Yann Collet
af892e5f1c
Merge pull request #1403 from facebook/assert_opt
just add an assert() in ZSTD_insertBtAndGetAllMatches()
2018-11-05 17:57:30 -08:00
Yann Collet
3e5cdf1b6a fixed T36302429 2018-11-05 17:50:30 -08:00
Yann Collet
2caa995558 just add an assert() in ZSTD_insertBtAndGetAllMatches()
to express a condition on ll0 .
May help static analyzer as in #1397
2018-11-05 17:13:32 -08:00
Yann Collet
3a90229616
Merge pull request #1395 from facebook/decompressblock
created zstd_decompress_block module
2018-10-29 16:28:09 -07:00
Yann Collet
2a0c9e0806
Merge pull request #1398 from bmwiedemann/pgo
Fix building zstd-pgo
2018-10-29 16:00:26 -07:00
Yann Collet
acd75a1448 fixed a second memset() on NULL
not sure why it only triggers now,
this code has been around for a while.

Introduced a new error code : dstBuffer_null,
I couldn't express anything even remotely similar with existing error codes set.
2018-10-29 15:03:57 -07:00
Yann Collet
9c58098200 fixed memcpy() on NULL warning
memcpy(NULL, src, 0) is undefined behavior.
2018-10-29 13:57:37 -07:00
Yann Collet
ea966c8fb1
Merge pull request #1396 from facebook/huf_refactor
refactor HUF_compress_internal for clarity
2018-10-29 13:06:45 -07:00
Bernhard M. Wiedemann
572279e73e pgo: also optimize compression
and clean *.o so that linking does not fail from code
that is partially augmented with coverage generation instructions
2018-10-29 17:20:03 +01:00
Bernhard M. Wiedemann
a38ad53ace zstd-pgo: do not make clean and zstd in parallel
otherwise, there might not be a ./zstd to run
2018-10-29 15:11:28 +01:00
Yann Collet
fc20b3c441 added flag -Wc++-compat
for library and cli
2018-10-26 16:38:23 -07:00
Yann Collet
4860311d99 renamed NEWS as CHANGELOG
to conform fb publication rules.
2018-10-26 15:57:13 -07:00
Yann Collet
9bf00707c7 minor clarifications of history update rules 2018-10-26 15:51:51 -07:00
Yann Collet
c3c7deb1e1
Merge pull request #1392 from coetry/dev
provide consistent spacing to enum field
2018-10-26 15:29:07 -07:00
Yann Collet
0db109c041
Merge pull request #1394 from terrelln/circleci-packaging
Publish uncompressed, zstd, and gzipped packages
2018-10-26 15:28:44 -07:00
Yann Collet
1866bd374a Merge branch 'dev' into huf_Refactor 2018-10-26 15:25:01 -07:00
Yann Collet
8d56f4baee added a few comments for clarifications 2018-10-26 15:21:52 -07:00
Yann Collet
450356b5af Merge branch 'dev' into decompressblock 2018-10-26 15:03:43 -07:00
Yann Collet
7d4960a5e8
Merge pull request #1390 from facebook/nullAsOutput
support decompressing an empty frame into NULL
2018-10-26 14:43:16 -07:00
Allen Hai
3783720f70 vertically align code comment 2018-10-26 16:16:06 -05:00
Yann Collet
7b74405150 refactor HUF_compress_internal for clarity
changed workspace parameter convention
to always provide workspaceSize,
so that size can be explicitly checked.

Also, use more enum to make the meaning of some parameters more explicit.
2018-10-26 13:21:37 -07:00
Nick Terrell
191e19aff8 Publish uncompressed, zstd, and gzipped packages 2018-10-26 13:06:53 -07:00
Yann Collet
4ed9233db6 fixed VS2010 project 2018-10-26 11:25:40 -07:00
Yann Collet
b832498aee fixed : extraneous function prototype in fullbench.c
now provided through zstd_internal.h
2018-10-26 10:39:49 -07:00
Allen Hai
26e34d8a73 provide consistent spacing to enum field 2018-10-25 18:45:20 -05:00
Yann Collet
2b4914082e created zstd_decompress_block module
isolate all logic associated with block decompression
into its own module.

zstd_decompress is still in charge
of context creation/destruction,
frames, headers, streaming, special blocks, etc.

Compressed blocks themselves are now handled within zstd_decompress_block .
2018-10-25 16:28:41 -07:00
Yann Collet
e26126caca
Merge pull request #1388 from facebook/ddict
separate DDict logic into its own module
2018-10-25 10:20:40 -07:00
Yann Collet
cb320a9fc0 added comment on public ddict functions 2018-10-24 16:50:03 -07:00
Yann Collet
806a5c84e4 support decompressing an empty frame into NULL
fix #1385
decompressing into NULL was an automatic error.
It is now allowed, as long as the content of the frame is empty.

Seems to simplify things for `arrow`.
Maybe some other projects rely on this behavior ?
2018-10-24 16:34:35 -07:00
Yann Collet
b7421f8e69 fix and refactored libzstd_partial_build.sh
make the test intention clearer
(easier to maintain)

also resist the existence of zstd_ddict.o within libzstd.a
2018-10-24 11:32:09 -07:00
Yann Collet
debff3929b fixed warnings in testpools 2018-10-24 10:36:06 -07:00
Yann Collet
cc3612e1c5 added simple guard macros
in case of accidental multi-includes
2018-10-23 17:55:23 -07:00
Yann Collet
2f7e1c8737 fixed VS2010 build script 2018-10-23 17:44:43 -07:00
Yann Collet
1ae38772df restored cmake build tests in Travis
for some reason, these tests were no longer played on Travis.

As a consequence, I discovered some left-over from the util.c change while testing.
2018-10-23 17:40:15 -07:00
Yann Collet
ccd2d426fc separate DDict logic into its own module
created zstd_ddict.c within lib/decompress
2018-10-23 17:25:49 -07:00
Yann Collet
059aa1b8f1
Merge pull request #1384 from ulikunitz/dev
Clarify special case of offset history update
2018-10-23 14:34:58 -07:00
Ulrich Kunitz
f0fe9b0f02 Reverted removal of a trailing space.
My editor removes trailing spaces while saving. Not confusing things I
reverted that change.
2018-10-23 08:43:19 +02:00
Ulrich Kunitz
4f702e4445 Fixed a typo
I fixed a typo in the last commit. Many thanks to @terrelin for pointing
that out.
2018-10-23 08:36:50 +02:00
Ulrich Kunitz
c7942caff0 Clarify special case of offset history update
If the current sequence has literal length of zero then an offset value
of three is handled in a special manner. While I implemented a golang
decoder I had to consult the educational decoder for clarification on
the update of the offset history in that case. This commit provides the
clarification that the offset value Repeated_Offset1-1 is handled as a
new offset is added to the offset history accordingly.
2018-10-22 23:46:43 +02:00
Yann Collet
ca46afd72b
Merge pull request #1383 from facebook/uninstall
fix : removed zstdmt symlink on uninstall
2018-10-22 14:04:15 -07:00
Yann Collet
fab150ce9f fix : removed zstdmt symlink on uninstall 2018-10-22 12:51:56 -07:00
Yann Collet
c81236620f
Merge pull request #1380 from facebook/decodecorpus
fix decodecorpus incorrect frame generation
2018-10-22 11:57:12 -07:00
Nick Terrell
ed39c0e04b
Merge pull request #1382 from jonesz/ticket-compiler-rt-fuzzer
Fix libFuzzer location in makefile.
2018-10-22 10:48:56 -07:00
Ethan Jones
953c7b9463 Fix libFuzzer location in makefile.
libFuzzer was moved into compiler-rt, update the repo location
accordingly.
2018-10-22 11:19:13 -05:00
Yann Collet
f181799082 fix decodecorpus incorrect frame generation
fix #1379
decodecorpus was generating one extraneous byte when `nbSeq==0`.
This is disallowed by the specification.

The reference decoder was just skipping the extraneous byte.
It is now stricter, and flag such situation as an error.
2018-10-20 18:56:21 -07:00
Yann Collet
f2cff22804
Merge pull request #1368 from rkjain89/test-branch
Moving Code To util.c
2018-10-19 16:31:10 -07:00