W. Felix Handte
5707c8a9d5
Speed Up Test a Little
2019-09-11 13:23:59 -04:00
W. Felix Handte
ed4c2c60c3
Add Fuzzer Test Case for Index Reduction
2019-09-11 13:17:19 -04:00
W. Felix Handte
7c57e2b9ca
Zero h3size When h3log is 0
...
This led to a nasty edgecase, where index reduction for modes that don't use
the h3 table would have a degenerate table (size 4) allocated and marked clean,
but which would not be re-indexed.
2019-09-11 13:14:26 -04:00
W. Felix Handte
bc020eec92
Also Shrink Clean Table Area When Reducing Indices
2019-09-11 11:40:57 -04:00
W. Felix Handte
1999b2ed9b
Update DEBUGLOG Statements
2019-09-11 11:21:00 -04:00
W. Felix Handte
13e29a56de
Shrink Clean Table Area When Copying Table Contents into Context
...
The source matchState is potentially at a lower current index, which means
that any extra table space not overwritten by the copy may now contain
invalid indices. The simple solution is to unconditionally shrink the valid
table area to just the area overwritten.
2019-09-11 11:18:45 -04:00
W. Felix Handte
edb3ad053e
Comments
2019-09-10 18:25:45 -04:00
W. Felix Handte
f31ef28ff8
Only Reset Indexing in ZSTD_resetCCtx_internal() When Necessary
2019-09-10 18:25:45 -04:00
W. Felix Handte
9968a53e91
Remove No-Longer-Used Continuation Functions
2019-09-10 18:25:45 -04:00
W. Felix Handte
1b28e80416
Remove Fast Continue Path in ZSTD_resetCCtx_internal()
2019-09-10 18:25:45 -04:00
W. Felix Handte
ad16eda5e4
ZSTD_reset_matchState Optionally Doesn't Restart Indexing
2019-09-10 18:25:45 -04:00
W. Felix Handte
5b10bb5ec3
Rename ZSTD_compResetPolicy_e Values and Add Comment
2019-09-10 18:25:45 -04:00
W. Felix Handte
0492b9a9ec
Accept ZSTD_indexResetPolicy_e Param in ZSTD_reset_matchState()
2019-09-10 18:25:45 -04:00
W. Felix Handte
14c5471d5e
Introduce ZSTD_indexResetPolicy_e Enum
2019-09-10 18:25:45 -04:00
W. Felix Handte
17b6da2e0f
Track Usable Table Space in Compression Workspace
2019-09-10 18:25:37 -04:00
W. Felix Handte
a9d373f093
Remove Empty lib/compress/zstd_cwksp.c
2019-09-10 16:03:13 -04:00
W. Felix Handte
81208fd7c2
Forward Declare ZSTD_cwksp_available_space to Fix Build
2019-09-09 19:10:09 -04:00
W. Felix Handte
91bf1babd1
Inline Workspace Functions
2019-09-09 18:53:53 -04:00
W. Felix Handte
0db3ffe7ee
Forward resetCCtx Errors when Using CDict
2019-09-09 16:47:19 -04:00
W. Felix Handte
eb6f69d978
Fix sizeof_CCtx and sizeof_CDict Calculations for Statically Init'ed Objects
2019-09-09 16:45:17 -04:00
W. Felix Handte
e3703825a8
Fix workspaceTooSmall Calculation
2019-09-09 15:12:14 -04:00
W. Felix Handte
0a65a67901
Shorten &zc->workspace -> ws in ZSTD_resetCCtx_internal()
2019-09-09 14:59:09 -04:00
W. Felix Handte
1120e4d962
Clean Up TODOs and Comments pt. II
2019-09-09 14:04:39 -04:00
W. Felix Handte
c60e1c3be5
Nit
2019-09-09 13:34:08 -04:00
W. Felix Handte
7d7b665c90
Pull Phase Advance Logic Out into Internal Function
2019-09-09 13:34:08 -04:00
W. Felix Handte
8549ae9f1d
Hide Workspace Movement Behind Helper Function
2019-09-09 13:34:08 -04:00
W. Felix Handte
2405c03bcd
Fix DEBUGLOG Statement Levels
2019-09-09 13:34:08 -04:00
W. Felix Handte
7100d24221
Fix Rescale Continue Special Case
2019-09-09 13:34:08 -04:00
W. Felix Handte
7321e4c9f3
Remove Unused noRealloc CRP Value
2019-09-09 13:34:08 -04:00
W. Felix Handte
901bba4ca6
Re-Implement Workspace Shrinking when Oversized
2019-09-09 13:34:08 -04:00
W. Felix Handte
e8cc137477
Add New File to Visual Studio Projects
2019-09-09 13:34:08 -04:00
W. Felix Handte
4e9b1341cf
Add New File to Meson Build
2019-09-09 13:34:08 -04:00
W. Felix Handte
881bcd80ca
Cleanup from Move
2019-09-09 13:34:08 -04:00
W. Felix Handte
b511a84adc
Move Workspace Functions to Their Own File
2019-09-09 13:34:08 -04:00
W. Felix Handte
077a2d7dc9
Rename
2019-09-09 13:34:08 -04:00
W. Felix Handte
ebd162194f
Clean Up TODOs and Comments
2019-09-09 13:34:08 -04:00
W. Felix Handte
2abe0145b1
Improve Comments a Bit
2019-09-09 13:34:08 -04:00
W. Felix Handte
7a2416a863
Allocate CDict in Workspace (Rather than in Separate Allocation)
2019-09-09 13:34:08 -04:00
W. Felix Handte
65057cf009
Rewrite ZSTD_initStaticCCtx to Alloc CCtx in Workspace
2019-09-09 13:34:08 -04:00
W. Felix Handte
58b69ab15c
Only the CCtx Itself Needs to be Cleared during Static CCtx Init
2019-09-09 13:34:08 -04:00
W. Felix Handte
88c2fcd0ee
Align Alloc Pointer When Transitioning from Buffers to Aligned Allocs
2019-09-09 13:34:08 -04:00
W. Felix Handte
e936b73889
Remove Overly-Restrictive Assert
2019-09-09 13:34:08 -04:00
W. Felix Handte
75d574368b
When Loading Dict By Copy, Always Put it in the Workspace
2019-09-09 13:34:08 -04:00
W. Felix Handte
e69b67e33a
Alloc Tables Separately
2019-09-09 13:34:08 -04:00
W. Felix Handte
6177354b36
Begin Introducing Phases
2019-09-09 13:34:08 -04:00
W. Felix Handte
786f2266bb
TMP
2019-09-09 13:34:08 -04:00
W. Felix Handte
c25283cf00
Disambiguate 'workspace' and 'entropyWorkspace'
2019-09-09 13:34:08 -04:00
W. Felix Handte
ccaac852e8
Normalize Case 'workSpace' -> 'workspace'
2019-09-09 13:27:18 -04:00
Felix Handte and GitHub
a3d655d225
v1.4.3: Merge pull request #1730 from facebook/dev
2019-08-19 16:48:01 -04:00
Felix Handte and GitHub
c9072ee674
Merge pull request #1722 from felixhandte/legacy-decompression-fix
...
Fix Buffer Overflow in Legacy (v0.3) Raw Literals Decompression
2019-08-15 15:55:46 -04:00
W. Felix Handte
d6f31e1c38
Add to CHANGELOG for Upcoming Release
2019-08-15 14:42:38 -04:00
W. Felix Handte
a42bbb4e05
Fix Buffer Overflow in Legacy (v0.3) Raw Literals Decompression
2019-08-15 14:28:30 -04:00
Felix Handte and GitHub
87e31223e8
Merge pull request #1711 from felixhandte/changelog-v1.4.3
...
Update Changelog for v1.4.3
2019-08-06 17:02:37 -04:00
W. Felix Handte
6b68980173
Update Changelog for v1.4.3
2019-08-06 17:01:46 -04:00
W. Felix Handte
904734e484
Run versionsTest in CI
2019-07-30 20:11:25 -04:00
Felix Handte and GitHub
ff304e9e65
v1.4.2: Merge pull request #1700 from facebook/dev
2019-07-25 13:44:51 -04:00
Felix Handte and GitHub
d95ac34202
Merge pull request #1701 from LeeYoung624/dev
...
memory leak fix
2019-07-25 11:56:37 -04:00
Felix Handte and GitHub
2314906b68
Merge pull request #1699 from felixhandte/seekable-gitignore
...
Add New Seekable Compression Example to .gitignore
2019-07-24 19:07:55 -04:00
W. Felix Handte
15da57820d
Add New Seekable Compression Example to .gitignore
2019-07-24 18:22:20 -04:00
W. Felix Handte
9cb9b1c9a5
Update Manual
2019-07-24 18:21:11 -04:00
W. Felix Handte
25824cc185
Update CHANGELOG
2019-07-24 17:35:52 -04:00
W. Felix Handte
8083581f9a
Bump Library Version Number to 1.4.2
2019-07-24 17:35:19 -04:00
Felix Handte and GitHub
52181f877a
v1.4.1: Merge pull request #1691 from facebook/dev
2019-07-19 14:37:37 -04:00
W. Felix Handte
62a0dc57b1
Update CHANGELOG with v1.4.1 Changes
2019-07-19 11:18:10 -04:00
W. Felix Handte
a2861d75eb
[doc] Bump Format Spec Version
2019-07-17 18:55:45 -04:00
W. Felix Handte
c05b270edc
[doc] Remove Limitation that Compressed Block is Smaller than Uncompressed Content
...
This changes the size limit on compressed blocks to match those of the other
block types: they may not be larger than the `Block_Maximum_Decompressed_Size`,
which is the smaller of the `Window_Size` and 128 KB, removing the additional
restriction that had been placed on `Compressed_Block`s, that they be smaller
than the decompressed content they represent.
Several things motivate removing this restriction. On the one hand, this
restriction is not useful for decoders: the decoder must nonetheless be
prepared to accept compressed blocks that are the full
`Block_Maximum_Decompressed_Size`. And on the other, this bound is actually
artificially limiting. If block representations were entirely independent,
a compressed representation of a block that is larger than the contents of the
block would be ipso facto useless, and it would be strictly better to send it
as an `Raw_Block`. However, blocks are not entirely independent, and it can
make sense to pay the cost of encoding custom entropy tables in a block, even
if that pushes that block size over the size of the data it represents,
because those tables can be re-used by subsequent blocks.
Finally, as far as I can tell, this restriction in the spec is not currently
enforced in any Zstandard implementation, nor has it ever been. This change
should therefore be safe to make.
2019-07-17 18:55:45 -04:00
Felix Handte and GitHub
344f942573
Merge pull request #1620 from michaelforney/test-no-threads
...
Skip --adapt and --rsyncable tests when built without thread support
2019-06-11 15:05:25 -04:00
W. Felix Handte
d8970199f8
Add Contbuild Test for C99 Build
2019-06-10 11:22:45 -04:00
Felix Handte and GitHub
e79dbb8074
Merge pull request #1642 from Absotively/dev
...
VS2010 project settings improvements
2019-06-10 10:39:25 -04:00
W. Felix Handte
d2c48042e6
Switch Macro Guarding lstat()
2019-06-07 15:32:28 -04:00
W. Felix Handte
b878bd08dd
Clean Up Temp Files Produced By playTests.sh
2019-06-07 15:32:28 -04:00
Felix Handte and GitHub
015985c1f9
Merge pull request #1633 from yk-tanigawa/patch-1
...
Update README.md
2019-06-05 14:55:19 -04:00
Felix Handte and GitHub
21bb78e908
Merge pull request #1618 from felixhandte/zstgrep-f-flag
...
Handle `-f` Flag in `zstgrep`
2019-05-24 20:59:11 -04:00
W. Felix Handte
6a0638048a
Add Test
2019-05-24 17:21:44 -04:00
W. Felix Handte
61025d5b7d
zstdgrep: Handle -f Flag
2019-05-24 16:55:59 -04:00
W. Felix Handte
ff0be17cf7
Build Manual
2019-05-24 16:55:43 -04:00
W. Felix Handte
501eb25102
Rename FORWARD_ERROR -> FORWARD_IF_ERROR
2019-01-29 12:56:07 -05:00
W. Felix Handte
429987c9a6
Add Comment
2019-01-28 17:35:31 -05:00
W. Felix Handte
2179ce00e1
Remove CHECK_E Macro
2019-01-28 17:33:13 -05:00
W. Felix Handte
03e040a966
Replace Uses of CHECK_E with RETURN_ERROR_IF(*_isError(...
2019-01-28 17:33:01 -05:00
W. Felix Handte
7ebd897157
Remove CHECK_F Macro
2019-01-28 17:16:32 -05:00
W. Felix Handte
64bb6640f2
Replace CHECK_F Uses in zstdmt_compress.c and zstd_ddict.c
2019-01-28 17:15:57 -05:00
W. Felix Handte
cafc3b1bcb
Also Convert zstd_compress.c
2019-01-28 17:05:18 -05:00
W. Felix Handte
324e9654d3
Add grep-able String to Error Macros
2019-01-28 12:50:36 -05:00
W. Felix Handte
32fed9c7be
Switch CHECK_F Calls to FORWARD_ERROR
2019-01-28 12:45:34 -05:00
W. Felix Handte
800c87fed0
Switch Unconditional RETURN_ERROR_IF Calls to RETURN_ERROR
2019-01-28 12:45:34 -05:00
W. Felix Handte
a3538bbc6f
Add RETURN_ERROR and FORWARD_ERROR Macros
2019-01-28 12:45:26 -05:00
W. Felix Handte
c823237d7b
Convert Checks in zstd_decompress.c to RETURN_ERROR_IF
2019-01-28 12:23:14 -05:00
W. Felix Handte
ea031f4ea2
Convert Checks in zstd_decompress_block.c to RETURN_ERROR_IF
2019-01-28 11:56:39 -05:00
W. Felix Handte
54fa31f03b
Add RETURN_ERROR_IF Macro That Logs Debug Information When Check Fails
2019-01-28 11:43:33 -05:00
W. Felix Handte
91b7309115
Mask Off Unused Functions When ZSTD_FORCE_DECOMPRESS_SEQUENCES_LONG
2018-12-20 12:20:34 -08:00
W. Felix Handte
038aabde28
Mask Off Unused Functions When ZSTD_FORCE_DECOMPRESS_SEQUENCES_SHORT
2018-12-20 12:15:07 -08:00
W. Felix Handte
9b944041da
Update Travis Jobs to Run Shorter Tests with -Werror
2018-12-20 12:10:51 -08:00
W. Felix Handte
8e61ac8161
Use Unused Variable in ERR_getErrorString()
2018-12-19 12:36:10 -08:00
W. Felix Handte
0d606ee3db
Fix Incorrect assert()
2018-12-18 13:36:39 -08:00
W. Felix Handte
bd4afc389f
Add Logic to Makefile to Convert Make Vars to Defines
2018-12-18 13:36:39 -08:00
W. Felix Handte
ece2c18372
Document Macros in README
2018-12-18 13:36:39 -08:00
W. Felix Handte
4e2f6c110e
Add Contbuild Tests
2018-12-18 13:36:39 -08:00
W. Felix Handte
c2d51637d9
Add Mutual-Exclusion Error
2018-12-18 13:36:39 -08:00
W. Felix Handte
c560e34c86
Add HUF_FORCE_DECOMPRESS_X2
2018-12-18 13:36:39 -08:00