|
b8d85c69
|
2022-11-30T12:51:59
|
|
Update for SDL3 coding style (#6717)
I updated .clang-format and ran clang-format 14 over the src and test directories to standardize the code base.
In general I let clang-format have it's way, and added markup to prevent formatting of code that would break or be completely unreadable if formatted.
The script I ran for the src directory is added as build-scripts/clang-format-src.sh
This fixes:
#6592
#6593
#6594
(cherry picked from commit 5750bcb174300011b91d1de20edb288fcca70f8c)
|
|
fb0ce375
|
2022-11-27T17:38:43
|
|
Cleanup add brace (#6545)
* Add braces after if conditions
* More add braces after if conditions
* Add braces after while() conditions
* Fix compilation because of macro being modified
* Add braces to for loop
* Add braces after if/goto
* Move comments up
* Remove extra () in the 'return ...;' statements
* More remove extra () in the 'return ...;' statements
* More remove extra () in the 'return ...;' statements after merge
* Fix inconsistent patterns are xxx == NULL vs !xxx
* More "{}" for "if() break;" and "if() continue;"
* More "{}" after if() short statement
* More "{}" after "if () return;" statement
* More fix inconsistent patterns are xxx == NULL vs !xxx
* Revert some modificaion on SDL_RLEaccel.c
* SDL_RLEaccel: no short statement
* Cleanup 'if' where the bracket is in a new line
* Cleanup 'while' where the bracket is in a new line
* Cleanup 'for' where the bracket is in a new line
* Cleanup 'else' where the bracket is in a new line
(cherry picked from commit 6a2200823c66e53bd3cda4a25f0206b834392652 to reduce conflicts merging between SDL2 and SDL3)
|
|
65527537
|
2021-03-30T04:32:39
|
|
N3DS port (squashed)
A dedicated renderer using Citro3D would likely allow for better
much better graphical performances.
|
|
cfab203f
|
2022-09-29T07:36:14
|
|
emscripten: Remove use of EM_ASM from SDL_timer code.
Instead use the native emscripten timer API.
See https://github.com/emscripten-core/emscripten/issues/17941
|
|
f317d619
|
2022-07-01T13:59:14
|
|
Xbox GDKX support (#5869)
* Xbox GDK support (14 squashed commits)
* Added basic keyboard testing
* Update readme
* Code review fixes
* Fixed issue where controller add/removal wasn't working (since the device notification events don't work on Xbox, have to use the joystick thread to poll XInput)
|
|
f25b4b27
|
2022-06-27T16:57:21
|
|
Style: Flip `if` statement.
|
|
6c536afd
|
2022-06-27T15:43:17
|
|
Fix C89 declaration for macOS modules.
Since Clang 14, `-Wdeclaration-after-statement` is enforced on every
standard.
|
|
217d3a6d
|
2022-06-13T20:35:27
|
|
Add systimer support
|
|
fbd230bb
|
2022-05-03T17:51:49
|
|
Add support for the Nokia N-Gage (#5597)
* Add initial support for the Nokia N-Gage
* N-Gage: disable clipping for the time being, issue needs to be resolved later
* Move va_copy definition to SDL_internal.h
* Move stdlib.h include to SDL_config_ngage.h, much cleaner this way
* Remove redundant include, add HAVE_STDLIB_H
* Revert "N-Gage: disable clipping for the time being, issue needs to be resolved later"
This reverts commit 4f5f0fc36cc7f34fad05e45671dfa7b8dc32fd51.
* N-Gage: fix clipping issue by providing proper math functions
|
|
f708cebe
|
2022-04-12T15:35:32
|
|
fix os2 timer in fallback mode
|
|
99af3281
|
2022-01-22T12:27:43
|
|
timer: Fix Emscripten declaration-after-statement error
|
|
120c76c8
|
2022-01-03T09:40:00
|
|
Updated copyright for 2022
|
|
21fd0047
|
2021-11-29T18:42:13
|
|
Initial for building PSP version with CMake
|
|
c7065bf4
|
2021-11-09T11:31:29
|
|
Fix warning: declaration shadows a local variable
|
|
d950b9e2
|
2021-11-07T20:40:54
|
|
emscripten: Make timers work (if used with emscripten_set_main_loop)
Co-authored-by: aidanhs <aidanhs@cantab.net>
|
|
8593076d
|
2021-11-02T16:04:36
|
|
Fixed whitespace
|
|
62629c2b
|
2021-11-02T22:17:41
|
|
Fix 64-bit timeval/timespec delta calculations
|
|
2379c528
|
2021-10-25T11:04:42
|
|
os/2: Don't try to be clever with the 32-bit GetTicks fallback.
|
|
cca79d32
|
2021-10-23T15:30:20
|
|
android: Patched SDL_GetTicks64() to compile.
|
|
affb183e
|
2021-10-23T15:20:32
|
|
unix: Fixed SDL_GetTicks64 function signature.
|
|
99c9727d
|
2021-10-23T15:00:31
|
|
timer: Added SDL_GetTicks64(), for a timer that doesn't wrap every ~49 days.
Note that this removes the timeGetTime() fallback on Windows; it is a
32-bit counter and SDL2 should never choose to use it, as it only is needed
if QueryPerformanceCounter() isn't available, and QPC is _always_ available
on Windows XP and later.
OS/2 has a similar situation, but since it isn't clear to me that similar
promises can be made about DosTmrQueryTime() even in modern times, I decided
to leave the fallback in, with some heroic measures added to try to provide a
true 64-bit tick counter despite the 49-day wraparound. That approach can
migrate to Windows too, if we discover some truly broken install that doesn't
have QPC and still depends on timeGetTime().
Fixes #4870.
|
|
a4ddb175
|
2021-03-08T19:28:58
|
|
Formatting
|
|
7d89f09f
|
2020-12-18T14:28:09
|
|
ISO C90 fixes
|
|
3ac2242e
|
2020-12-09T12:37:39
|
|
Fix PerformanceCounter
|
|
2d64e37e
|
2020-11-02T18:09:43
|
|
Initial rebase of xerpi's port
|
|
2426949a
|
2021-02-01T21:56:56
|
|
Removed support for clock_gettime_nsec_np()
SDL_GetTicks() was broken and it's not adding any real value here.
|
|
96cfb812
|
2021-01-23T09:50:43
|
|
Fixed bug 5467 - SDL sys timer Mac OS update proposal
David Carlier
Change of api from 2016 which reduce code complexity a bit.
|
|
9130f7c3
|
2021-01-02T10:25:38
|
|
Updated copyright for 2021
|
|
cb361896
|
2020-12-09T07:16:22
|
|
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.
|
|
a90f0400
|
2020-10-15T21:37:30
|
|
os2: a _lot_ of coding style cleanup, sot that they match the SDL style.
also renamed the 'debug' macro to debug_os2: the former was dangerously
a common name.
the binary (dll) output is precisely the same as before.
|
|
1d9cf23e
|
2020-10-14T23:01:05
|
|
os2: updated copyright dates for 2020. header guard fixes.
|
|
74cfb81d
|
2020-10-14T23:01:00
|
|
os2: add port files for SDL2-2.0.4 from Andrey Vasilkin
only geniconv/iconv.h (was from LGPL libiconv) is replaced with a generic
minimal iconv.h based on public knowledge.
|
|
e594a673
|
2020-06-27T16:25:47
|
|
emscripten: Introduce SDL_HINT_EMSCRIPTEN_ASYNCIFY
See https://github.com/emscripten-core/emscripten/issues/10746
and
https://github.com/emscripten-ports/SDL2/pull/112
Fixes Bugzilla #4997.
|
|
01af7b02
|
2020-06-27T16:22:50
|
|
emscripten: support pseudo-synchronous screen refresh and events update using asyncify
|
|
a8780c6a
|
2020-01-16T20:49:25
|
|
Updated copyright date for 2020
|
|
5e13087b
|
2019-01-04T22:01:14
|
|
Updated copyright for 2019
|
|
7468d1e0
|
2018-12-06T15:46:40
|
|
Fix warnings detected on Android build
|
|
91820998
|
2018-10-28T21:36:48
|
|
Add and update include guards
Include guards in most changed files were missing, I added them keeping
the same style as other SDL files. In some cases I moved the include
guards around to be the first thing the header has to take advantage of
any possible improvements compiler may have for inclusion guards.
|
|
e3cc5b2c
|
2018-01-03T10:03:25
|
|
Updated copyright for 2018
|
|
de91b124
|
2017-08-14T06:28:21
|
|
Fixed bug 3745 - specify SDLCALL as the calling convention for API callbacks
Patches contributed by Ozkan Sezer
|
|
72ab2588
|
2017-08-13T21:48:40
|
|
Fixed bug 2764 - Timer is not rescheduled with the returned interval
afwlehmann
Sorry for re-opening, but it turns out that the current interval is indeed not updated. I've just checked the source code of the 2.0.3 release again:
163 if (current->canceled) {
164 interval = 0;
165 } else {
166 interval = current->callback(current->interval, current->param);
167 }
168
169 if (interval > 0) {
170 /* Reschedule this timer */
171 current->interval = interval; // <-- this line is missing
172 current->scheduled = tick + interval;
173 SDL_AddTimerInternal(data, current);
174 } else {
According to the documentation: "The callback function is passed the current timer interval and the user supplied parameter from the SDL_AddTimer() call and returns the next timer interval. If the returned value from the callback is 0, the timer is canceled."
If I understand the text correctly, then the current interval should in fact be updated according to the returned value. Otherwise there would be a discrepancy between the next time for which the timer is actually re-scheduled and the value that's passed to the callback once the timer fires again.
This could be fixed by adding line #171.
|
|
ca5c3048
|
2017-08-13T21:06:52
|
|
Fixed bug 3744 - missing SDLCALL in several functions
Ozkan Sezer
The attached patch adds missing SDLCALL to several functions, so that
they properly match the headers as intended.
|
|
84aeab17
|
2017-07-29T23:00:14
|
|
haiku: Changed header paths to be more compatible.
|
|
45b774e3
|
2017-01-01T18:33:28
|
|
Updated copyright for 2017
|
|
57d01d7d
|
2016-11-13T22:57:41
|
|
Patch from Sylvain to fix clang warnings
|
|
f31ce3fb
|
2016-10-16T22:47:37
|
|
Windows: Fixed not removing the always added hint callback on quit.
This was no real problem because SDL_Quit() also calls SDL_ClearHints().
|
|
c61675dc
|
2016-04-12T16:45:10
|
|
threads: Move SDL's own thread creation to a new internal API.
This allows us to set an explicit stack size (overriding the system default
and the global hint an app might have set), and remove all the macro salsa
for dealing with _beginthreadex and such, as internal threads always set those
to NULL anyhow.
I've taken some guesses on reasonable (and tiny!) stack sizes for our
internal threads, but some of these might turn out to be too small in
practice and need an increase. Most of them are simple functions, though.
|
|
33af421d
|
2016-02-14T21:17:25
|
|
Windows: make sure SDL_TicksInit has been called before calling Sleep(ms) in SDL_Delay. This ensures the Windows system timer resolution is properly set before Sleep is called.
|
|
fa8c83c1
|
2016-01-03T06:50:50
|
|
Remove almost all instances of "volatile" keyword.
As Tiffany pointed out in Bugzilla, volatile is not useful for thread safety:
https://software.intel.com/en-us/blogs/2007/11/30/volatile-almost-useless-for-multi-threaded-programming/
Some of these volatiles didn't need to be, some were otherwise protected by
spinlocks or mutexes, and some got moved over to SDL_atomic_t data, etc.
Fixes Bugzilla #3220.
|
|
42065e78
|
2016-01-02T10:10:34
|
|
Updated copyright to 2016
|
|
0e45984f
|
2015-06-21T17:33:46
|
|
Fixed crash if initialization of EGL failed but was tried again later.
The internal function SDL_EGL_LoadLibrary() did not delete and remove a mostly
uninitialized data structure if loading the library first failed. A later try to
use EGL then skipped initialization and assumed it was previously successful
because the data structure now already existed. This led to at least one crash
in the internal function SDL_EGL_ChooseConfig() because a NULL pointer was
dereferenced to make a call to eglBindAPI().
|
|
903df4af
|
2015-06-19T23:49:00
|
|
Use CLOCK_MONOTONIC_RAW, if available, which is not subject to adjustment by NTP
|
|
2c4a6ea0
|
2015-05-26T06:27:46
|
|
Updated the copyright year to 2015
|
|
69f6f646
|
2015-04-20T13:43:24
|
|
Cleaned up the macro salsa in the Windows timer code.
- Removed USE_GETTICKCOUNT code; it's never used now.
- Reduced the number of preprocessor checks for WinRT.
- Renamed timeSetPeriod() so it doesn't look like a Win32 API call.
|
|
b72938c8
|
2015-04-20T12:22:44
|
|
Windows: Always set the system timer resolution to 1ms by default.
An existing hint lets apps that don't need the timer resolution changed avoid
this, to save battery, etc, but this fixes several problems in timing, audio
callbacks not firing fast enough, etc.
Fixes Bugzilla #2944.
|
|
fe6c797c
|
2015-04-10T23:30:31
|
|
Fixed an iOS view orientation issue when SDL_GL_CreateContext or SDL_CreateRenderer is called.
|
|
b88ca1b4
|
2015-02-10T16:28:56
|
|
the last parameter of XChangeProperty is the number of elements.. and when the element format is 32.. the element is "long" so we have 5 long elements here.
Yes this seems confusing as on mac+linux Long is either 32 or 64bits depending on the architecture, but this is how the X11 protocol is defined. Thus 5 is the correct value for the nelts here. Not 5 or 10 depending on the architecture.
More info on the confusion https://bugs.freedesktop.org/show_bug.cgi?id=16802
|
|
86f87bf7
|
2015-01-31T22:45:54
|
|
Added missing guards in implementation for PSP.
Thanks to Martin Gerhardy for pointing this out.
|
|
d036ad84
|
2015-01-31T22:43:05
|
|
Added missing include statements in implementation for PSP.
SDL_internal.h should be included to support dynamic API and fix warnings.
|
|
b48e54aa
|
2015-01-26T22:00:29
|
|
Fixed bug 2802 - [patch] Fix android build compiling in wrong filesystem implementation
Jonas Kulla
The configure script didn't differentiate between Linux and Android, unconditionally compiling in the unix implementation of SDL_sysfilesystem.c.
I'm probably one of the very few people building SDL for android using classic configure + standalone toolchain, so this has gone undetected all along.
|
|
70438be2
|
2014-12-03T10:55:23
|
|
WinRT: fixed bug whereby SDL would override an app's default orientation
WinRT apps can set a default, preferred orientation via a .appxmanifest file.
SDL was overriding this on app startup, and making the app use all possible
orientations (landscape and portrait).
Thanks to Eric Wing for the heads up on this!
|
|
9c398852
|
2014-11-22T22:20:40
|
|
Corrected header file documentation comment.
|
|
e6cca5e9
|
2014-11-15T10:12:36
|
|
WinRT: build fix for Visual C++ 2013 Update 4
Visual C++ 2013 Update 4 re-introduced the Sleep() function to WinRT apps (for
code that targets Windows 8.1 and Windows Phone 8.1). This led to a build
error, as SDL was defining it's own Sleep() function (to make up for the lack
of a public Sleep() function). The fix makes sure that SDL's custom Sleep()
function is only used when Windows' Sleep() is not available.
Many thanks go out to Sergiu Marian Gaina for the fix!
|
|
24c86b55
|
2014-09-11T19:24:42
|
|
[X11] Reconcile logical keyboard state with physical state on FocusIn
since the window system doesn't do it for us like other platforms.
This prevents sticky keys and missed keys when going in and out
of focus, for example Alt would appear to stick if switching away
from an SDL app with Alt-Tab and had to be pressed again.
CR: Sam
|
|
7187b74c
|
2014-07-07T11:00:25
|
|
Fixed compiler warnings on iOS
|
|
7e52722d
|
2014-06-20T11:10:16
|
|
Fix compiler warnings in Native Client and Linux builds.
|
|
3dcb451f
|
2014-04-09T21:29:19
|
|
Added a README file regarding WinRT support
To note, this file is currently formatted with CRLF line endings, rather than
LF, to allow the file to be viewed with Notepad.
|
|
1367bf87
|
2014-03-09T11:36:47
|
|
Integrated David Ludwig's support for Windows RT
|
|
05c23063
|
2014-03-09T11:06:11
|
|
Fixed line endings on WinRT source code
|
|
e663b4eb
|
2014-03-01T09:50:52
|
|
Fixed bug 2423 - timeBeginPeriod & timeEndPeriod mismatch
Coriiander
In src\timer\windows\SDL_systimer.c there is an error with regards to timeBeginPeriod and timeEndPeriod. These functions typically get called when no high resolution timer is available, and GetTickCount is not used.
According to MSDN (link: http://msdn.microsoft.com/en-us/library/windows/desktop/dd757624(v=vs.85).aspx), for every call to timeBeginPeriod a subsequent call to timeEndPeriod is required. While SDL is currently doing this, it fails to call timeEndPeriod when cleaning up/shutting down SDL. Please note that these functions affect things on a system level. Failing to call timeEndPeriod, disables applications for using WINMM-timers after usage&shutdown of SDL, as effectively they the mechanism is now broken.
Solution:
Ensure this code gets called when shutting down the timer subsystem:
#ifndef USE_GETTICKCOUNT
if (!hires_timer_available)
{
timeSetPeriod(0);
}
#endif
|
|
58edac3e
|
2014-02-02T00:53:27
|
|
Fixed bug 2374 - Update copyright for 2014...
Is it that time already??
|
|
090327e7
|
2013-12-09T16:03:18
|
|
Implemented the Dynamic API magic.
|
|
f848adff
|
2013-11-29T10:06:08
|
|
Improve Android pause/resume behavior.
|
|
46740a5a
|
2013-11-28T22:09:21
|
|
WinRT: merged with latest SDL 2.x/HG code
SDL 2.x recently accepted patches to enable OpenGL ES 2 support via Google's ANGLE library. The thought is to try to eventually merge SDL/WinRT's OpenGL code with SDL-official's.
|
|
7e1289af
|
2013-11-24T23:56:17
|
|
Make internal SDL sources include SDL_internal.h instead of SDL_config.h
The new header will include SDL_config.h, but allows for other global stuff.
|
|
00003e8c
|
2013-11-14T11:51:24
|
|
Renamed things named after BeOS to be named after Haiku instead.
|
|
69c5d21d
|
2013-10-27T21:26:46
|
|
WinRT: merged with SDL 2.0.1 codebase
|
|
eec4710c
|
2013-08-29T14:03:44
|
|
Fixes bug #2074 - Thanks Sylvain!
SDL_syssem.c:159 comparison of unsigned expression >= 0 is always true
Solved by comparing unsigneds directly
SDL_systimer.c:164: warning: control may reach end of Compile
Solved by returning the default value if all else fails.
SDL_androidgl.c:41:1: warning: type specifier missing, defaults to 'int'
SDL_androidgl.c:47:1: warning: control reaches end of non-void function
Solved by adding void return type to the function implementation
|
|
2490166d
|
2013-08-21T10:12:16
|
|
Fixes for -Wdeclaration-after-statement
|
|
7e3b7dbc
|
2013-08-17T20:46:34
|
|
Patched to compile with Visual Studio.
|
|
d7817f42
|
2013-08-17T17:04:14
|
|
Fixed for consistency with the other platforms
|
|
e187810e
|
2013-08-17T18:07:29
|
|
auto init the ticks if the GetTicks and the like methods are called before SDL_Init().. This prevents annoying game bugs such as caching SDL_GetPerformanceFrequency in a static initializer
|
|
d41fdc94
|
2013-08-13T20:09:52
|
|
WinRT: build fixes and additional WinRT-related integrations with SDL 2.0.0
|
|
dad42067
|
2013-08-12T11:13:50
|
|
Fixes #2022, do not resume on Android when surfaceChanged
If the app is in landscape mode and the user presses the power button, a pause
is followed immediately by a surfaceChanged event because the lock screen
is shown in portrait mode. This triggers a "false" resume.
So, we just pause and resume following the onWindowFocusChanged events.
Also, wait for SDL_APP_WILLENTERBACKGROUND and SDL_APP_DIDENTERBACKGROUND before
blocking the event pump.
|
|
1ad936eb
|
2013-08-11T19:56:43
|
|
Fixed bug 2027 - Full-screen appears to be broken - hang in SDL_DestroyWindow()
Rainer Deyke
I'm running Linux Mint 15 with the Cinnamon window manager. SDL_DestroyWindow consistently locks up for me when the window if fullscreen.
|