1
0
mirror of https://github.com/facebook/zstd.git synced 2025-07-05 18:41:19 +03:00

33 Commits

Author SHA1 Message Date
fe34776c20 Fix new typos found by codespell 2023-09-23 18:56:01 +02:00
3732a08f5b fixed decoder behavior when nbSeqs==0 is encoded using 2 bytes
The sequence section starts with a number, which tells how sequences are present in the section.
If this number if 0, the section automatically ends.

The number 0 can be represented using the 1 byte or the 2 bytes formats.
That's because the 2-bytes formats fully overlaps the 1 byte format.

However, when 0 is represented using the 2-bytes format,
the decoder was expecting the sequence section to continue,
and was looking for FSE tables, which is incorrect.

Fixed this behavior, in both the reference decoder and the educational behavior.

In practice, this behavior never happens,
because the encoder will always select the 1-byte format to represent 0,
since this is more efficient.

Completed the fix with a new golden sample for tests,
a clarification of the specification,
and a decoder errata paragraph.
2023-06-05 16:03:00 -07:00
5108c9ac97 Fixed a bug in the educational decoder
Credit to Igor Pavlov
2023-05-27 11:22:30 -07:00
0d6954b4cc added golden file for the new decompressor erratum 2023-04-19 00:24:35 -07:00
8927f985ff Update Copyright Headers 'Facebook' -> 'Meta Platforms'
```
for f in $(find . \( -path ./.git -o -path ./tests/fuzz/corpora \) -prune -o -type f);
do
  sed -i 's/Facebook, Inc\./Meta Platforms, Inc. and affiliates./' $f;
done
```
2022-12-20 12:37:57 -05:00
4dffc35f2e Convert references to https from http 2022-12-14 06:58:35 -08:00
ebbd675998 Fix typos 2021-11-13 10:04:04 +02:00
a494308ae9 [copyright][license] Switch to yearless copyright and some cleanup in the linux-kernel files
* Switch to yearless copyright per FB policy
* Fix up SPDX-License-Identifier lines in `contrib/linux-kernel` sources
* Add zstd copyright/license header to the `contrib/linux-kernel` sources
* Update the `tests/test-license.py` to check for yearless copyright
* Improvements to `tests/test-license.py`
* Check `contrib/linux-kernel` in `tests/test-license.py`
2021-03-30 10:30:43 -07:00
66e811d782 [license] Update year to 2021 2021-01-04 17:53:52 -05:00
ac58c8d720 Fix copyright and license lines
* All copyright lines now have -2020 instead of -present
* All copyright lines include "Facebook, Inc"
* All licenses are now standardized

The copyright in `threading.{h,c}` is not changed because it comes from
zstdmt.

The copyright and license of `divsufsort.{h,c}` is not changed.
2020-03-26 17:02:06 -07:00
9a71d07aa4 added ability to remove error messages and dictionary support (#1975)
for the benefit of smaller binary.
2020-01-27 11:39:29 -08:00
25ce9ac401 removed UNALIGNED() macro from educational decoder
as this name collides with existing macro in mingw64+clang9.
2019-10-16 17:27:03 -07:00
83749411a6 Removing unnecessary check from decode side 2019-10-16 16:26:46 -07:00
a3815d233c fix minor compilation condition
harness.c is not designed to pass  -Wdeclaration-after-statement
2019-09-06 16:51:16 -07:00
2b0a271ed2 fix eductional decoder
fix #1774
also :
- fix minor compilation warnings
- make sure the `test` is run during CI tests
2019-09-06 14:30:13 -07:00
a880ca239b Spelling (#1582)
* spelling: accidentally

* spelling: across

* spelling: additionally

* spelling: addresses

* spelling: appropriate

* spelling: assumed

* spelling: available

* spelling: builder

* spelling: capacity

* spelling: compiler

* spelling: compressibility

* spelling: compressor

* spelling: compression

* spelling: contract

* spelling: convenience

* spelling: decompress

* spelling: description

* spelling: deflate

* spelling: deterministically

* spelling: dictionary

* spelling: display

* spelling: eliminate

* spelling: preemptively

* spelling: exclude

* spelling: failure

* spelling: independence

* spelling: independent

* spelling: intentionally

* spelling: matching

* spelling: maximum

* spelling: meaning

* spelling: mishandled

* spelling: memory

* spelling: occasionally

* spelling: occurrence

* spelling: official

* spelling: offsets

* spelling: original

* spelling: output

* spelling: overflow

* spelling: overridden

* spelling: parameter

* spelling: performance

* spelling: probability

* spelling: receives

* spelling: redundant

* spelling: recompression

* spelling: resources

* spelling: sanity

* spelling: segment

* spelling: series

* spelling: specified

* spelling: specify

* spelling: subtracted

* spelling: successful

* spelling: return

* spelling: translation

* spelling: update

* spelling: unrelated

* spelling: useless

* spelling: variables

* spelling: variety

* spelling: verbatim

* spelling: verification

* spelling: visited

* spelling: warming

* spelling: workers

* spelling: with
2019-04-12 11:18:11 -07:00
b0cb081dc8 last batch of header files changed to reflect new license (#825)
only remains to update contrib/linux-kernel (@terrelln)
2017-08-31 12:20:50 -07:00
bef5eda8d9 const vars, change copy_literals() to only take size_t literal_length 2017-08-16 11:11:52 -07:00
8d3f18af2c renamed IO functions for clarity 2017-08-14 17:51:51 -07:00
6aebcfa0bc added comments for new functions 2017-08-14 15:11:01 -07:00
9d56c21279 added separate function for executing match copy command 2017-08-14 15:06:03 -07:00
d3e57db0bd created separate function for offset computation 2017-08-14 14:20:12 -07:00
b6d6be58c9 created separate function for copying literals during sequence execution 2017-08-14 14:05:16 -07:00
93c1309fd4 added free to free_dictionary() 2017-08-14 13:08:30 -07:00
38f4e43381 added error checking for dictionary initialized with null src 2017-08-14 09:41:04 -07:00
7ef9c6f4b2 made separate API for dictionary management 2017-08-11 18:40:19 -07:00
bfc6db8d6a exposed dictionary functions/types 2017-08-11 17:53:37 -07:00
9f67e8652e fixed warnings shown by compiler 2017-08-11 14:41:44 -07:00
736a28d835 reduce educational decoder to single frame decompression 2017-08-11 14:34:49 -07:00
7f67f8dce6 Educational decoder polish updates 2017-03-23 14:33:38 -07:00
9f048cb74a Educational decoder: Some more minor clarity fixes 2017-03-21 17:01:51 -07:00
ea14b73795 Educational decoder: Clarify IO_rewind_bits 2017-03-21 15:05:40 -07:00
1d1932480e Move educational_decoder to doc/ and add doc README
- Also make some minor bugfixes to educational decoder
2017-02-23 14:34:52 -08:00