Commit Graph

4299 Commits

Author SHA1 Message Date
Nick Terrell
07c6ff588e [FSE][HUF] Inline error checks
Caught by Clang's optimization remarks.
2017-08-15 11:23:28 -07:00
Nick Terrell
57e2df6651 [kernel] Update squashfs-tools patch 2017-08-14 22:43:36 -07:00
Nick Terrell
565e925eb7 [libzstd] Fix FORCE_INLINE macro 2017-08-14 21:12:05 -07:00
Paul Cruz
8d3f18af2c renamed IO functions for clarity 2017-08-14 17:51:51 -07:00
Paul Cruz
6aebcfa0bc added comments for new functions 2017-08-14 15:11:01 -07:00
Paul Cruz
9d56c21279 added separate function for executing match copy command 2017-08-14 15:06:03 -07:00
Paul Cruz
d3e57db0bd created separate function for offset computation 2017-08-14 14:20:12 -07:00
Paul Cruz
b6d6be58c9 created separate function for copying literals during sequence execution 2017-08-14 14:05:16 -07:00
Paul Cruz
93c1309fd4 added free to free_dictionary() 2017-08-14 13:08:30 -07:00
Yann Collet
dedd0d5b35 Merge pull request #791 from romange/dev
Fix ZSTD_estimateDStreamSize function - Fixes #45
2017-08-14 09:55:12 -07:00
Yann Collet
0ae20e5614 Merge pull request #793 from codicodi/fix-lz4-support
fix typo in lz4 support code
2017-08-14 09:54:00 -07:00
Paul Cruz
38f4e43381 added error checking for dictionary initialized with null src 2017-08-14 09:41:04 -07:00
codicodi
0fb7b23fcc fix typo in lz4 support code 2017-08-14 14:04:24 +02:00
Roman Gershman
b9d4f4fb74 Fix ZSTD_estimateDStreamSize function after ZSTD_DStream and ZSTD_DCtx were merged 2017-08-13 13:29:42 +03:00
Paul Cruz
7ef9c6f4b2 made separate API for dictionary management 2017-08-11 18:40:19 -07:00
Paul Cruz
bfc6db8d6a exposed dictionary functions/types 2017-08-11 17:53:37 -07:00
Paul Cruz
bd308d806b remove debug symbols when cleaning, added a simple test 2017-08-11 14:42:15 -07:00
Paul Cruz
9f67e8652e fixed warnings shown by compiler 2017-08-11 14:41:44 -07:00
Paul Cruz
d0dc675596 add makefile 2017-08-11 14:35:13 -07:00
Paul Cruz
736a28d835 reduce educational decoder to single frame decompression 2017-08-11 14:34:49 -07:00
Yann Collet
0ab9d55e7a Merge branch 'dev' of github.com:facebook/zstd into dev 2017-08-11 10:17:49 -07:00
Yann Collet
cae4024889 Merge pull request #787 from paulcruz74/dev
Bugfixes for Valgrind and TSAN
2017-08-10 17:39:17 -07:00
Paul Cruz
fc90469587 updated program name print statement 2017-08-10 16:11:59 -07:00
Paul Cruz
75c3ad947c Merge remote-tracking branch 'upstream/dev' into dev 2017-08-10 14:46:31 -07:00
Yann Collet
8915b9b518 Merge pull request #786 from terrelln/squashfs-tools
[linux-kernel] Update patches for v4 and v5
2017-08-09 16:00:11 -07:00
Nick Terrell
8b6702a00d [linux-kernel] Update patches for v5 2017-08-09 13:03:40 -07:00
Yann Collet
80c7b4823c Merge pull request #785 from terrelln/dev
[CI] Add gcc7build test
2017-08-08 14:21:45 -07:00
Nick Terrell
9ba97182d1 [CI] Add gcc7build test 2017-08-08 13:28:56 -07:00
Yann Collet
d9f2893eb9 Merge pull request #782 from terrelln/dstSizeTooSmall
Fix compression failure on incompressible data
2017-08-07 14:52:02 -07:00
Yann Collet
a1fe656165 Merge pull request #779 from paulcruz74/adapt-approach-4
Patching warnings, adding ability to bound compression variation
2017-08-07 14:50:38 -07:00
Yann Collet
8049556928 Merge pull request #778 from terrelln/bad-huff
[libzstd] Fix bug in Huffman decompresser
2017-08-07 14:05:58 -07:00
Yann Collet
6d0a5c5728 Merge pull request #781 from stellamplau/qSize
Allow queueSize=0 in pool.c
2017-08-07 13:55:19 -07:00
Paul Cruz
7069bb9458 Merge branch 'adapt-approach-4' into bug-fixes 2017-08-07 13:18:53 -07:00
Paul Cruz
e100a311eb removed direct assignment of 22, used ZSTD_maxCLevel() instead 2017-08-07 13:11:07 -07:00
Nick Terrell
abe12b3399 [libzstd] Fix bug in Huffman decompresser
The zstd format specification doesn't enforce that Huffman compressed
literals (including the table) have to be smaller than the uncompressed
literals. The compressor will never Huffman compress literals if the
compressed size is larger than the uncompressed size. The decompresser
doesn't accept Huffman compressed literals with 4 streams whose compressed
size is at least as large as the uncompressed size.

* Make the decompresser accept Huffman compressed literals whose size
  increases.
* Add a test case that exposes the bug. The compressed file has to be
  statically generated, since the compressor won't normally produce files
  that expose the bug.
2017-08-07 12:37:48 -07:00
Stella Lau
e1abc2a367 Switch the sleep function to UTIL_sleepMilli 2017-08-07 11:49:13 -07:00
Nick Terrell
308047eb5d Fix compression failure on incompressible data
If the destination buffer is the minimum allowed size in
`ZSTD_compressSequences()` (2^17), then if the block isn't compressible
compression might fail with `dstSize_tooSmall`, when it should instead emit
a raw uncompressed block.

Additionally, `ZSTD_compressLiterals()` implicitly called
`ZSTD_noCompressLiterals()` if Huffman compression failed. Make that
explicit.
2017-08-07 11:45:24 -07:00
Nick Terrell
7393b49fbd [linux-kernel] Update patches for v4 2017-08-04 16:57:03 -07:00
Paul Cruz
01237e3b35 changed multi to zstd-adaptive in the help menu 2017-08-03 15:13:49 -07:00
Stella Lau
1e366f9dea Add test for deadlock 2017-08-02 11:27:50 -07:00
Paul Cruz
8be7bba08c added mutex for compression level to avoid data race 2017-08-02 10:27:33 -07:00
Stella Lau
73ba58955f Signal after finishing job when queueSize=0 2017-08-01 20:12:06 -07:00
Paul Cruz
69ef22c0ac added detach statements to prevent resource leak 2017-08-01 17:36:13 -07:00
Stella Lau
1d76da1d87 Replace marker with queueEmpty variable and update pool.h comment 2017-08-01 12:30:16 -07:00
Paul Cruz
f8c7b191e7 Merge branch 'adapt-approach-4' into dev 2017-07-31 15:42:57 -07:00
Paul Cruz
0295737ad7 change signal to broadcast for jobCompressed condition varaible since multiple threads waiting 2017-07-31 13:43:03 -07:00
Paul Cruz
cf92221671 Merge remote-tracking branch 'upstream/dev' into dev 2017-07-31 11:43:40 -07:00
Paul Cruz
c2f1bda8a1 Merge branch 'adapt-approach-4' into dev 2017-07-31 11:43:01 -07:00
Paul Cruz
9ea7df03de add install target in makefile 2017-07-31 11:04:17 -07:00
Stella Lau
5adceeed01 Allow queueSize=0 in pool.c and update poolTests 2017-07-31 10:10:16 -07:00