Sam Lantinga
9130f7c377
Updated copyright for 2021
2021-01-02 10:25:38 -08:00
Ozkan Sezer
8a32ee24db
removed MSVC strtok_s use from SDL_strtokr().
...
no other ??_s are used elsewhere in SDL_stdinc. besides, C11 has a
strtok_s with a different signature.
2020-12-30 01:00:24 +03:00
Sam Lantinga
93ccdee8c1
Fixed bug 5404 - stdlib: Added SDL_round, SDL_roundf, SDL_lround and SDL_lroundf
...
Cameron Cawley
stdlib: Added SDL_round, SDL_roundf, SDL_lround and SDL_lroundf
The default implementation is based on the one used in the Windows RT video driver.
2020-12-23 13:47:49 -08:00
Sam Lantinga
cb36189692
Fixed bug 5235 - All internal sources should include SDL_assert.h
...
Ryan C. Gordon
We should really stick this in SDL_internal.h or something so it's always available.
2020-12-09 07:16:22 -08:00
Sam Lantinga
f487d63a6b
Fixed crash when printing NULL wide character string
2020-12-03 18:16:56 -08:00
Sam Lantinga
46a844786b
Added SDL_wcscasecmp() and SDL_wcsncasecmp()
2020-11-24 12:43:01 -08:00
Ryan C. Gordon
55e59a4f33
crc32: Fixed include path.
2020-11-16 18:48:13 -05:00
Sam Lantinga
71e32f5e1b
Added SDL_crc32()
2020-11-16 15:00:15 -08:00
Sam Lantinga
8b29aaddbd
Fixed warning when building on Windows
2020-11-12 14:34:11 -08:00
Ryan C. Gordon
e410b34f92
stdlib: Corrected implementation of SDL_wcsncmp.
...
It was a copy/paste of SDL_strcmp, apparently, not SDL_strncmp, so it ignored
the maxlen parameter.
Thanks to Jack Powell for pointing this out!
2020-07-24 22:24:03 -04:00
Sam Lantinga
31916f11aa
Fixed compiler warning building on FreeBSD
2020-05-27 09:22:12 -07:00
Ryan C. Gordon
b0a20a153c
stdlib: Fixed compiler warnings about int vs size_t.
2020-05-05 12:48:55 -04:00
Sam Lantinga
8b60d39cb0
Fixed bug 5112 - CMake won't compile in VS2019
...
dark_sylinc
Trying to build SDL with VS2019 using CMake will encounter a linking error
More specifically:
1>SDL_string.obj : error LNK2019: unresolved external symbol memset referenced in function SDL_vsnprintf_REAL
2020-05-02 14:43:17 -07:00
Sam Lantinga
1d8797876a
Fixed implicit linkage to ftol2() on Windows
2020-04-13 13:24:56 -07:00
Ryan C. Gordon
d292f6bd4f
stdlib: Add SDL_trunc and SDL_truncf
2020-04-10 12:17:14 -04:00
Sam Lantinga
342f62ca69
Fixed bug 5022 - SDL_iconv_string can get stuck in an infinite loop when encountering invalid characters
...
ciremo6483
In `SDL_iconv_string` the `while (inbytesleft > 0)` loop can end up in a state where it never terminates because the library `iconv` function called from `SDL_iconv` doesn't consume any bytes.
This happened when a `WCHAR_T` input string was being converted to `UTF-8` but contained invalid characters. It would first It would first skip a few bytes due to `case SDL_ICONV_EILSEQ` but when there were 3 bytes remaining of `inbytesleft` `iconv` just didn't consume anything more (but didn't throw an error either).
It just so happens that the Microsoft Classic IntelliMouse `product_string` contains such invalid characters (`"Microsoft? Classic IntelliMouse?"`), meaning the function would get stuck with said mouse plugged in.
A fix for this would be to check if `inbytesleft` was unchanged after an iteration and in that case either decrement the counter like when `SDL_ICONV_EILSEQ` is returned or simply break the loop.
2020-03-10 16:29:28 -07:00
Sam Lantinga
aa384ad02b
Fixed bug 5001 - Feature request: SDL_isupper & SDL_islower
2020-03-02 15:21:07 -08:00
Sam Lantinga
a8780c6a28
Updated copyright date for 2020
2020-01-16 20:49:25 -08:00
Sam Lantinga
650964461e
Improved XInput VID/PID detection and added SDL_wcsstr() and SDL_wcsncmp()
2019-11-20 16:42:50 -08:00
Ozkan Sezer
eb8f14bb6a
added SDL_strtokr() as a replacement for POSIX strtok_r (bug #4046.)
2019-11-20 20:40:50 +03:00
Ozkan Sezer
fea3c8bdef
SDL_qsort.c: sync comments with version 1.15 from mainstream
2019-10-31 17:10:02 +03:00
Sylvain Becker
b458d7a28f
Readability: remove redundant cast to the same type
2019-10-30 15:13:55 +01:00
Ryan C. Gordon
4001e6b351
stdlib: Patched to compile.
2019-09-26 13:44:49 -04:00
Ryan C. Gordon
987aa3113c
stdlib: Try to coerce VS2019 to not replace some loops with memset() calls.
...
Fixes (?) Bugzilla #4759 .
2019-09-26 12:55:05 -04:00
Ozkan Sezer
2ea0ec6207
better readability..
2019-07-31 00:07:15 +03:00
Ozkan Sezer
5f04ed5fbd
SDL_iconv_string: add (char*) casts before SDL_malloc() calls.
2019-07-31 00:06:50 +03:00
Cameron Cawley
e7b514d8ff
riscos: Fix iconv warnings
2019-01-13 23:36:31 +00:00
Sam Lantinga
5e13087b0f
Updated copyright for 2019
2019-01-04 22:01:14 -08:00
Ozkan Sezer
d3fa42b8c4
os/2 bits for SDL_malloc.c -- from libffi
2018-11-18 19:28:20 +03:00
Sam Lantinga
9e8e0fb7b1
Fixed bug 4283 - SDL's version of memset is different from libc's
...
janisozaur
memset's documentation reads:
* The memset() function shall copy c (converted to an unsigned char) into each of the first n bytes of the object pointed to by s. (http://pubs.opengroup.org/onlinepubs/9699919799/functions/memset.html )
* Sets the first count characters of dest to the character c. (https://msdn.microsoft.com/en-us/library/1fdeehz6.aspx )
* write a byte to a byte string (https://developer.apple.com/library/archive/documentation/System/Conceptual/ManPages_iPhoneOS/man3/memset.3.html )
The highlight here is they all mean a single _byte_, even though memset receives a parameter of type int, which can hold more data than a single byte. SDL's implementation of memset, however, does not clear any of the higher bits, causing an erroneous behaviour when passed an argument bigger than 0xff.
2018-09-28 20:48:18 -07:00
Ozkan Sezer
31596f23ce
SDL_vsnprintf: implemented '+' flag for signed integers printing.
...
it is, of course, ignored for %u, %x, %o and %p.
2018-09-29 01:24:10 +03:00
Ozkan Sezer
49803c8660
SDL_vsnprintf: fix numerics if both zero-padding and a field are given.
...
it used to place zeroes between the sign and the number. (space-padding
from within SDL_PrintString() seems OK: spaces are added before sign.)
also fixed the maxlen handling if the number has a sign.
2018-09-29 00:51:24 +03:00
Ozkan Sezer
bb5516ac8e
SDL_vsnprintf() updates for zero-padding:
...
- remove force-enabling of pad_zeroes for %u for compatibility
(was added in https://hg.libsdl.org/SDL/rev/701f4a25df89 )
- ignore pad_zeroes for %s and %S
- ignore pad_zeroes for %d, %i and %u if a precision is given
2018-09-27 09:37:36 +03:00
Ozkan Sezer
6eeb8593ba
SDL_string.c (SDL_PrintString): avoid MSVC signed/unsigned mismatch warning
2018-09-27 01:10:50 +03:00
Ozkan Sezer
5342ae2bba
SDL_string.c (SDL_IntPrecisionAdjust): avoid MSVC generating a memset()
2018-09-27 01:00:50 +03:00
Ozkan Sezer
d2131ac165
SDL_vsnprintf: implement precision for the integral value printers.
2018-09-27 00:32:15 +03:00
Ozkan Sezer
ffc19ee255
SDL_string.c: added comments to three SDL_FormatInfo members.
2018-09-26 20:47:34 +03:00
Ozkan Sezer
8743e9759e
SDL_vsnprintf: when '.' is specified, take precision as 0 if it is < 0.
2018-09-26 17:11:40 +03:00
Ozkan Sezer
69ab8541a9
SDL_vsnprintf: string printer now honors the precision. (bug #4263.)
2018-09-26 10:40:02 +03:00
Ozkan Sezer
d0e9a36460
SDL_vsnprintf: %.* and %* now parse precision and width. (bug #4263.)
2018-09-26 10:38:40 +03:00
Sam Lantinga
5febdfcece
Fixed whitespace
2018-09-24 11:49:25 -07:00
Sam Lantinga
d2042e1ed4
Added HIDAPI joystick drivers for more consistent support for Xbox, PS4 and Nintendo Switch Pro controller support across platforms.
...
Added SDL_GameControllerRumble() and SDL_JoystickRumble() for simple force feedback outside of the SDL haptics API
2018-08-09 16:00:17 -07:00
Ozkan Sezer
f45f33bdc0
SDL_expf: return SDL_exp() instead of SDL_uclibc_exp() for consistency.
2018-08-05 10:01:01 +03:00
Ethan Lee
b4fe7412f9
SDL_exp
2018-08-04 11:52:46 -04:00
Ozkan Sezer
652d59fb3b
make sure SDL_vsnprintf() nul terminates if it is using _vsnprintf
...
The change makes sure that SDL_vsnprintf() nul terminates if it is
using _vsnprintf() for the job.
I made this patch for Watcom, whose _vsnprintf() doesn't guarantee
nul termination. The preprocessor check can be extended to windows
in general too, if required.
Closes bug #3769 .
2018-05-10 09:02:39 +03:00
Sam Lantinga
3b4c2fdf5d
Fixed bug 3947 - replace strlcpy with memcpy in SDL_strdup()
2018-02-13 08:13:29 -08:00
Ethan Lee
11c348b4d7
SDL_log10
2018-01-17 11:53:09 -05:00
Sam Lantinga
e3cc5b2c6b
Updated copyright for 2018
2018-01-03 10:03:25 -08:00
Sam Lantinga
bcdf8b916b
Added SDL_fmod() and SDL_fmodf()
2017-11-04 17:35:03 -07:00
Sam Lantinga
34502143d9
Added float versions of SDL's math functions
2017-11-04 15:34:14 -07:00