Commit Graph

2203 Commits

Author SHA1 Message Date
Sean Barrett 5c205738c1 Merge branch 'master' of https://github.com/nothings/stb 2024-11-08 23:02:08 -08:00
Sean Barrett 40adb995ab fix accidental check-in of typo in stb_ds.h 2024-11-08 23:01:49 -08:00
Sean Barrett 0dd01c26ef
Update issue templates 2024-11-08 04:05:02 -08:00
Sean Barrett 758b6365ae reorder issues 2024-11-08 03:58:10 -08:00
Sean Barrett 42b75e7941
Update config.yml 2024-11-08 04:00:39 -08:00
Sean Barrett 8828c2e317
Update issue templates
add specific issue for stb_image incorrect load
2024-11-08 03:58:29 -08:00
Sean Barrett 2e2bef463a stb_image_resize2: update version number 2024-10-18 10:26:20 -07:00
xchellx 44092a1079 Fix typo in fix (yes this does fix the ASAN error) 2024-10-18 01:22:02 -04:00
xchellx 9855da7cb6 Update STBIR__FREE_AND_CLEAR fix as per suggestions 2024-10-18 00:19:29 -04:00
xchellx 0625101dd3 Fix STBIR__FREE_AND_CLEAR causing null reference member access
`stb_image_resize2.h:6734:5: runtime error: member access within null pointer of type 'stbir__info' (aka 'struct stbir__info')`
2024-10-17 23:47:31 -04:00
Sean Barrett 31707d14fd update readme 2024-10-02 12:41:37 -07:00
Jeff Roberts (Bellevue) af07f9d6e9 image resize 2.11 - fix harmless asan, fix point sample crash 2024-09-08 19:05:03 -07:00
Sean Barrett f75e8d1cad update README 2024-07-28 21:39:05 -07:00
Jeff Roberts (Bellevue) 64e783d738 resize 2.10 - fix gcc loop control and msvc arm32 2024-07-27 14:12:30 -07:00
Sean Barrett f7f20f39fe update README 2024-07-15 08:30:22 -07:00
Sean Barrett 8503b88874 Merge branch 'resize_latest' of https://github.com/jeffrbig2/stb into working 2024-07-15 08:29:18 -07:00
Sean Barrett 6e9f34d542 Merge branch 'master' into working 2024-07-15 08:28:08 -07:00
Jeff Roberts (Bellevue) 2a58424876 2.09 resize - fix defines for GCC arm 32 2024-06-19 10:41:02 -07:00
Sean Barrett 013ac3bedd
stb_image: fix gcc bounds-check warning (believed erroneous) 2024-05-31 10:43:47 -07:00
Sean Barrett 449758bd74 update stb_image_resize2.h 2024-05-25 10:56:08 -07:00
Jeff Roberts (Bellevue) 43201e7788 image resize 2.07 2024-05-24 18:48:38 -07:00
Sean Barrett ae721c50ea
Merge pull request #1609 from jeffrbig2/fix_coeffs
Fix bug in coeff gen on more than 3x downsamples with w and h equal
2024-02-12 23:49:35 -08:00
Jeff Roberts (Bellevue) 2fb057af65 remove test 2024-02-12 22:14:27 -08:00
Jeff Roberts (Bellevue) 1828f357dc Fix bug in coeff generation on more than 3x downsamples with width and height scale equal 2024-02-12 22:10:02 -08:00
Sean Barrett b7cf124628 stb_image: fix VC6 2024-02-08 13:24:06 -08:00
Jeff Roberts (Bellevue) c59da6729e Mark row0 as unused 2024-02-08 12:53:51 -08:00
Jeff Roberts (Bellevue) 7f7e3469cf clean up comments 2024-02-08 10:36:54 -08:00
Jeff Roberts (Bellevue) 7a075fe7c7 Fix 2 pixel to 1 pixel with wrap
Fix output buffer for output callback
2024-02-04 14:42:51 -08:00
Sean Barrett f4a71b1337 README.md: tweak credits 2023-12-14 10:59:23 -08:00
Sean Barrett a8a25e17b5 update readme version numbers 2023-12-14 03:13:59 -08:00
Sean Barrett 0bc88af4de stb_image: optimizations 2023-12-14 03:13:59 -08:00
Sean Barrett 0ca75da4ec stb_image_resize2: remove whitespace 2023-12-14 03:13:59 -08:00
Sean Barrett 9d924f8a47 stb_image_resize: 2.04 2023-12-14 03:13:59 -08:00
Fabian Giesen 4da08a1dbd stb_image: create_png_image_raw restructuring
Allocate filter_buf for two scan lines that we do all the filter
processing in, then do all other conversions (bit depth,
endianness, inserting alpha=255 values) on the way out.

Separating the two concerns makes everything much clearer.
2023-12-14 03:13:59 -08:00
Fabian Giesen c6d7c32e5d stb_image: Two warning fixes 2023-12-14 03:13:59 -08:00
Fabian Giesen 07268cbf36 stb_image: New Paeth filter
This formulation is equivalent to the original (reference)
implementation but runs _significantly_ faster - this speeds up
the filtering portion of a Paeth-heavy 8192x8192 16-bit/channel
image by a factor of more than 2 on a Zen2 CPU.

I'm investigating doing a more thorough restructuring of this pass,
but this seems like a good first step.
2023-12-14 03:13:59 -08:00
Fabian Giesen ed64333410 tests: test_png_regress
I want to make some changes to the PNG loader, this is to get some
test coverage at least to make it easier not to break anything.

The two ref_results files that are "corrupt" files that stb_image
nevertheless loads without error are checksum failures; this is
by design, since stb_image does not verify checksums.
2023-12-14 03:13:59 -08:00
Fabian Giesen 45eb4ac158 global: very basic .gitignore for object files 2023-12-14 03:13:59 -08:00
Fabian Giesen e5f0e18d0f stb_image: Small PNG filter simplification
Paeth on the first scanline is not a separate filter, it
happens to be equivalent to the "sub" filter which is already
an option.
2023-12-14 03:13:59 -08:00
Fabian Giesen d373674115 stb_image: Fix zlib decoder end-of-stream handling
We speculatively try to fill our bit buffer to always contain
at least 16 bits for stbi__zhuffman_decode. It's not a sign of
a malformed stream for us to be reading past the end there,
because the contents of that bit buffer are speculative; it's
only a malformed stream if we actually _consume_ the extra bits.

This fix adds some extra logic where we the first time we hit
zeof, we add an explicit 16 extra zero bits at the top of the
bit buffer just so that for the purposes of the decoder, we have
16 bits in the buffer.

However, if at the end of stream, we have the "hit zeof once"
flag set and less than 16 bits remaining in the bit buffer, we
know some of those implicit zero bits got read, which indicates
we actually had a past-end-of-stream read. In that case, flag
it as an error.

While I'm in here, also rephrase the length-too-large check to
not do any potentially-overflowing pointer arithmetic.

Fixes issue #1456.
2023-12-14 03:13:59 -08:00
Sean Barrett 03f50e343d security notice 2023-11-15 09:36:28 -08:00
Sean Barrett 1d878bd2a3 security notice 2023-11-15 09:35:21 -08:00
Sean Barrett beebb24b94 README.md: fix reference to stb_image_resize2.h 2023-10-11 17:32:00 -07:00
Sean Barrett e81f294b16 stb_image_resize: switch GNU/clang from "asm" to "__asm__" for -c99 compatibility 2023-10-11 17:28:56 -07:00
Sean Barrett c4bbb6e75f stb_image_resize2.h 2.00 2023-10-09 17:23:04 -07:00
Sean Barrett 5736b15f7e re-add perlin noise again 2023-01-29 10:47:07 -08:00
Sean Barrett 3ecc60f25a add version history update for stb_image 2023-01-29 10:19:12 -08:00
Sean Barrett 6199bf7713 update stb_image to 2.28 2023-01-29 06:24:13 -08:00
Sean Barrett 7c14c47e2f Merge branch 'sean_image' 2023-01-29 06:19:13 -08:00
Sean Barrett 1891060782 a fix 2023-01-29 06:17:45 -08:00