5225225
1c5800daa0
Infinitely try to read off images rather than only trying 128
2021-09-18 12:14:17 +01:00
5225225
885d762def
Implement cycle checking in IFD offsets
2021-09-08 18:08:10 +01:00
5225225
2c9e02d347
Merge remote-tracking branch 'origin/master' into oom
2021-09-06 17:53:16 +01:00
Jonathan Behrens
b318481c55
Merge pull request #143 from Christopher22/reset_tag_values
...
Do not carry tag values from previous images
2021-08-15 11:43:44 -04:00
5225225
1774b362d3
x
2021-07-15 18:08:40 +01:00
Jonathan Behrens
f2fec92283
Merge pull request #146 from fintelia/encode-signed-int
...
Support encoding signed integer formats
2021-06-20 18:39:08 -04:00
Jonathan Behrens
be0619d6a1
Support encoding signed integer formats
2021-06-20 14:33:13 -04:00
Tomáš Král
e92cf219a9
Fix the mandrill.tiff regression ( #145 )
...
* fix mandrill.tiff regression from upstream
* use contains_key(), added StripTileTagConflict error
* updated test_div_zero, added test_no_rows_per_strip
2021-06-17 09:22:07 -04:00
Christopher Gundler
3e5f977460
Do not carry tag values from previous images
2021-06-14 20:21:51 +02:00
5225225
f0666aebbf
Fix overflow when calculating strip height for multiple images
2021-05-29 22:52:42 +01:00
5225225
65a1fbe8ae
Test for short JPEG tag
2021-05-29 22:12:35 +01:00
5225225
03b6ed413b
Fix out of bounds subtraction with invalid JPEG table
2021-05-29 22:12:35 +01:00
5225225
5b7814c994
Check for OOM when creating LZWReader
2021-05-29 22:12:35 +01:00
5225225
a15d619471
Fix OOM in Jpeg decoding buffer allocation
2021-05-29 22:12:35 +01:00
HeroicKatora
458a713827
Merge pull request #140 from 5225225/fuzzer
...
Add fuzzer with 1MB size limits decoding image
2021-05-29 23:12:04 +02:00
5225225
2f6ad07f28
Try to read multiple images in fuzzer
2021-05-29 22:00:36 +01:00
HeroicKatora
153ed48ee7
Merge pull request #136 from TomasKralCZ/padding_skip
...
remove padding_buffer
2021-05-29 15:13:20 +02:00
5225225
420667955a
Add fuzzer with 1MB size limits decoding image
2021-05-29 13:18:35 +01:00
HeroicKatora
3bf19822a2
Merge pull request #139 from 5225225/value-bytes-overflow
...
Check for various arithmetic overflows
2021-05-29 13:48:03 +02:00
5225225
2bb37a4ecd
Do checked multiplication for samples per strip
2021-05-29 12:37:15 +01:00
5225225
b41ac105ab
Use checked multiplication when calculating buffer size
2021-05-29 12:36:59 +01:00
5225225
1e10b9803b
Add check for an invalid strip count
2021-05-29 12:36:50 +01:00
5225225
2f4e491874
Check for where tag count * tag size overflows
2021-05-28 20:32:30 +01:00
HeroicKatora
285b881e27
Merge pull request #138 from 5225225/divide_by_zero
...
Fix division by zero issue with malformed file
2021-05-28 19:59:37 +02:00
5225225
bdfe2f55fd
Check error returned from parsing invalid image
2021-05-28 15:46:55 +01:00
5225225
eda5a8ac30
Fix division by zero issue with malformed file
2021-05-28 14:44:50 +01:00
HeroicKatora
bd1e37d78b
Merge pull request #130 from phil-opp/release
...
Prepare 0.7.0 release
2021-05-25 21:03:44 +02:00
Andreas Molzer
e8bc935618
Mention changed interpretation of MinIsWhite
v0.7.0
2021-05-25 20:27:46 +02:00
Philipp Oppermann
150ff8303b
Add changes of #132 and #134
2021-05-25 20:19:01 +02:00
Philipp Oppermann
e44b98ddf9
Prepare 0.7.0 release
2021-05-25 20:19:01 +02:00
Tomáš Král
ad0f75222a
remove padding_buffer
2021-05-21 18:06:05 +02:00
HeroicKatora
4df26011d9
Merge pull request #133 from TomasKralCZ/inversion
...
expand_strip() and expand_tile() cleanup
2021-05-18 18:37:25 +02:00
Tomáš Král
4dc7c2a986
add comment in expand_strip()
2021-05-18 18:31:17 +02:00
Tomáš Král
b7c4f668ae
remove redundant subrange and outdated comments
2021-05-16 12:00:15 +02:00
Jonathan Behrens
9fe9b2e0a0
Merge pull request #134 from RReverser/remove-inflate-error
...
Remove InflateError
2021-05-15 16:50:36 -04:00
Ingvar Stepanyan
b7e8f210d1
Remove InflateError
...
It was left in but marked as deprecated as part of #132 to avoid breaking API changes.
However, #130 is going to mark a 0.7.0 release, so we can remove it altogether for simplicity.
2021-05-15 21:43:42 +01:00
Tomáš Král
371a9b53c3
fix u64::MAX error on older compilers
2021-05-15 21:31:11 +02:00
Tomáš Král
d0e4f37a28
implement subrange for DecodingBuffer
2021-05-15 21:14:00 +02:00
Tomáš Král
46c7efd836
remove unneeded mutability
2021-05-15 19:55:48 +02:00
Tomáš Král
65832e01bd
Merge branch 'master' into inversion
2021-05-15 19:49:01 +02:00
Tomáš Král
b9590e0842
remove WhiteIsZero i8 test
2021-05-15 18:15:24 +02:00
Tomáš Král
521b58dc07
expand_strip and expand_tile cleanup
2021-05-15 18:12:34 +02:00
Jonathan Behrens
e70121efbb
Merge pull request #132 from RReverser/deflate-improvements
...
Improve deflate support
2021-05-14 17:58:11 -04:00
Ingvar Stepanyan
a6fb855121
Improve deflate support
...
- Switch to streaming decompression via `flate2`. Aside from performance improvements and lower RAM consumption, this fixes a bug where `max_uncompressed_length` was precalculated for a single tile but then used as a hard limit on the whole data, failing to decompress any tiled images.
- Deprecate `InflateError` - this was used for wrapping `miniz_oxide` raw status, but `flate2` already reports them as `io::Error` instead. This makes errors from both Lzw and Deflate modes more consistent - they're all now just `io::Error`.
- Add support for new `Deflate` tag in addition to `OldDeflate` - format-wise it's same Zlib, and on practice decodes successfully with the same underlying code.
- Slightly simplify partial reads from the `Reader` by using the `std::io::copy` helper instead of doing it manually.
Fixes #131 .
2021-05-08 15:34:14 +01:00
HeroicKatora
a874b9c3a5
Merge pull request #125 from TomasKralCZ/tiles
...
Added basic tile decoding
2021-04-18 18:26:53 +02:00
Tomáš Král
d4ce174236
Merge remote-tracking branch 'upstream/master' into tiles
2021-04-14 13:32:56 +02:00
HeroicKatora
a43aa1fbc7
Merge pull request #126 from fintelia/better-decompress
...
Simplify de-compression logic
2021-04-12 18:36:07 +02:00
HeroicKatora
69c34ac33c
Merge pull request #128 from fintelia/simplify-expand3
...
Simplify expand_strip
2021-04-12 18:35:48 +02:00
Tomáš Král
00e0eb9006
incremental tile decoding, refactoring
2021-04-12 15:09:39 +02:00
Tomáš Král
ebd0e266f7
Merge remote-tracking branch 'upstream/master' into tiles
2021-04-12 14:52:38 +02:00