Commit Graph

1376 Commits

Author SHA1 Message Date
f882db0c80 Merge https://github.com/aras-p/stb into working 2017-01-02 14:07:06 -08:00
f07727a28a stb_image.h: large structures on the stack
more of "allocate large structures on the stack", this time in the forgotten stbi__jpeg_test
-> avoids the infamous _chkstk() when working with CRT
2016-12-28 14:16:45 +01:00
a055654ee3 Rename Point to stbv__point 2016-12-27 11:18:26 +01:00
3f36b29589 Overwrites error parameter in stb_vorbis_open_memory when there is no error. This avoid confusion due to previous values. 2016-12-26 16:01:50 +01:00
99fd236287 Merge branch 'master' of https://github.com/nothings/stb into num-fonts 2016-12-19 18:33:49 -07:00
ec9db6f84b allow for all 16 bits 2016-12-15 23:49:19 -05:00
13927ac386 stb_printf.h: Reuse code for assigning lead sign. 2016-12-06 10:34:08 -06:00
4338a0e55e Fix the check for a percent character
It was matching everything less than 0x26, so could cause a minor
performance loss. Also made the second if statement superfluous.
2016-12-05 21:03:05 +00:00
0e63382be0 A bit more involved change: support for both 1000 and 1024 divisors, and SI and JEDEC suffixes, as well as removing the space between number and suffix. 2016-12-05 17:23:01 +02:00
3e7f2d6ebd fix missing renames 2016-12-05 06:58:30 -08:00
bec0b26d1e Merge branch 'master' of https://github.com/nothings/stb 2016-12-05 06:53:53 -08:00
554e072742 fix #ifdef mistake in stb_sprintf 2016-12-05 06:53:36 -08:00
0c6bd72ccb Merge pull request #377 from aras-p/patch-1
stb_sprintf: seperators -> separators typo in comment
2016-12-05 05:58:30 -08:00
9a3f9dff13 More proper fix for the prefixes (defaults to Ki style, with define for using K style instead) 2016-12-05 15:08:54 +02:00
a27e577c3e The Si prefixes for mega, giga and tera are upper case (lower case m is not mega but milli) 2016-12-05 14:56:35 +02:00
e6e20b43db stb_sprintf: seperators -> separators typo in comment 2016-12-05 14:49:39 +02:00
ca3b8d7426 add credits to readme 2016-12-05 04:19:53 -08:00
9953803d0c fix bad search-replace in comment 2016-12-05 03:53:54 -08:00
3f2716ace4 add stb_sprintf to readme 2016-12-05 03:50:06 -08:00
c9fe5bac48 rename all stb_sprintf identifiers to follow stb conventions 2016-12-05 03:48:37 -08:00
fd23d7097d rename rrsprintf to stb_sprintf 2016-12-05 02:58:16 -08:00
454ed822a7 deprecate rrsprintf 2016-12-05 02:57:49 -08:00
a468fbda72 readme, add rrsprintf.h 2016-12-05 02:57:06 -08:00
75a8fd9d41 Add function to get the number of fonts in a TrueType file 2016-12-04 17:06:17 -07:00
7fa573cd61 Update stb_truetype.h 2016-12-04 16:06:34 -07:00
b61b7a74fa update version info 2016-12-04 05:40:21 -08:00
b9be4fd8df Merge branch 'merging' into working 2016-12-04 05:39:52 -08:00
0b2c06a7e1 more STB_IMAGE_STATIC fixes 2016-12-04 05:39:35 -08:00
7bcaa93a76 Merge branch 'master' of https://github.com/Zelex/stb into merging
Also add more credits
Also fix linking multiple copies with STB_IMAGE_STATIC

Conflicts:
	stb_image.h
2016-12-04 05:38:47 -08:00
4a1523f60a make tga load function static to avoid link errors on multiple instances 2016-12-04 05:28:26 -08:00
7759a2a93d fix "misleading indentation" gcc warning 2016-12-04 05:25:24 -08:00
ae241feec4 Merge branch 'stb_img_overflows' of https://github.com/rygorous/stb into working
Conflicts:
	stb_image.h
2016-12-04 05:20:57 -08:00
7736399517 return 16-bit PSDs through 16-bit API (untested) 2016-12-04 05:13:58 -08:00
07fefa384a Return all_rects_packed status from stbrp_pack_rects. 2016-11-30 13:24:38 -07:00
e0700d8e2c 16-bit png changes 2016-11-29 04:13:17 -08:00
239a6718e1 rename stbi_load parameters to reduce confusion 2016-11-29 03:03:07 -08:00
jon
2a170daee5 warning fixes, more RGBE fix 2016-11-28 16:24:11 -06:00
jon
a2defc3d7a added support for RGBE header HDR files 2016-11-28 16:05:39 -06:00
cd93a5de11 added basic 3Dc support 2016-11-26 16:45:40 +02:00
996ccf2159 update version numbers 2016-10-25 08:53:48 -07:00
5d9423f8fd fix -Wcast-qual in stb_rect_pack, stb_textedit, stb_truetype 2016-10-25 08:50:44 -07:00
6b66033e18 stb_image: Fix memory leak and missing out-of-mem check.
stbi__process_frame_header had two bugs when dealing with progressive
JPEGs:
1. when malloc failed allocating raw_data, previous components'
   raw_coeff didn't get freed
2. no out-of-memory check in raw_coeff allocation

Fix both and share a bit more cleanup code in general.
2016-10-22 00:29:37 -07:00
62f372754f stb_image: Fix HDR/PSD RLE decoders.
Runs need to be bounds checked.

Fixes issues #315, #317.
2016-10-22 00:29:37 -07:00
02190634c2 stb_image: Overflow checking for image allocs.
Adds some helpers that check whether a product of multiple
factors (that need to be non-negative: this is enforced)
summed with another non-negative value overflows when
performed as int. Since stb_image mostly works in ints,
this seems like the safest route. Limits size of images
to 2GB but several of the decoders already enforce this
limit (or even lower ones).

Also adds wrappers for malloc that combine a mul-add-with-
overflow-check with the actual malloc, and return NULL
on failure. Then use them when allocating something that
is the product of multiple factors.

For image formats, also add a top-level "is this too big?"
check that gives a more useful error message; otherwise,
the failed mallocs result in an "out of memory" error.
The idea is that the top-level checks should be the primary
way to catch these bugs (and produce a useful error message).
But a misleading error message is still vastly preferable to
a buffer overflow exploit.

Fixes issues #310, #313, #314, #318. (Verified with the
provided test images)

Along the way, this fixes a previously unnoticed bug in
ldr_to_hdr / hdr_to_ldr (missing NULL check); these functions
are called with the result of an image decoder, so NULLs can
definitely happen.

Another bug noticed along the way is that handling of
interlaced 16-bit PNGs was incorrect. Fixing this (along
with the previous modifications) fixes issue #311.

Yet another bug noticed during this change is that reduce_png
did not check the right pointer during its out of memory
check. Fix that too.
2016-10-22 00:29:37 -07:00
8c8d735eb7 stb_image: More input validation in deflate decoder
Fixes issue #312.
2016-10-22 00:29:37 -07:00
f32854c809 stb_vorbis: Fix handling of negative numbers in ilog.
For negative n, the original code went down the "n < (1<<4)"
path and performed an out-of-bounds array access. Fix the code
to agree with section 9.2.1 of the Vorbis spec. (Verified by
exhaustive testing of all 32-bit ints.)

Fixes issue #355.
2016-10-22 00:26:09 -07:00
2f4166e91d stb_connected_components 2016-10-16 07:59:57 -07:00
7d0099ecc9 fix bug in stb_connected_components adjacency list updating incorrectly handling avoiding adding the same connection twice 2016-10-16 07:58:59 -07:00
847d288152 stb_textedit: fix LINESTART when cursor is at end of buffer and no trailing newline. Stopped using find_charpos(), simpler and faster. 2016-10-16 13:33:21 +02:00
6a29bcf2a1 Update stb_voxel_render.h 2016-10-08 04:23:52 +02:00