Commit Graph

3573 Commits

Author SHA1 Message Date
Jørgen P. Tjernø
e054383e1d Fix build issue on Win/Haiku.
This fixes a build issue with C variable declarations in my refcounting
       change.
2013-02-12 12:18:46 -08:00
Jørgen P. Tjernø
e8a48ee6c0 Don't clobber refcounting in SDL_Init.
- Fixes bug 1712 by not overwriting SDL_SubsystemRefCount in SDL_Init.
       - Removes the SDL_initialized variable, and makes SDL_SubsystemRefCount
         the canonical source of truth for whether or not a subsystem has been
         initialized.
       - Refactors SDL_InitSubSystem and SDL_QuitSubSystem to use helper
         functions to manage refcount.
       - Adds automated tests for SDL_Init/Quit*.
       - Adds SDL_bits.h which contains SDL_MostSignificantBitIndex.
2013-02-12 11:47:31 -08:00
Jørgen P. Tjernø
8e2aba3d97 Fix a corruption when you remove first joystick on Linux.
Fixes a bug where the joystick subsystem would get corrupted if you unplug the
first of multiple joysticks. Fixes bug 1714.


CR: saml
2013-02-12 11:47:29 -08:00
Gabriel Jacobo
e2bdf7e39d Bug 1703 - SDL calls a wrong JNI function on Android by Philipp Wiesemann 2013-02-12 13:59:04 -03:00
Sam Lantinga
d29e029213 tree 5b46fd5b8c94
parent 971b278f0756
author Edward Rudd <urkle@outoforder.cc> 1358022907 18000
committer Edward Rudd <urkle@outoforder.cc> 1358022907 18000
revision 6819
branch default

Remove some redundant assigns
2013-02-11 21:47:13 -08:00
Sam Lantinga
257c74559e Fixed increasing the size of resizable windows 2013-02-11 21:39:58 -08:00
Sam Lantinga
56622f0281 Fixed mouse wheel delta on Windows 2013-02-11 21:29:36 -08:00
Sam Lantinga
972b2abc34 Fixed bug 1491 - Directx3d Crash on resize
Spinduluz

RenderTarget has to be released before a device reset is done. It's a
D3DPOOL_DEFAULT surface (resides in video memory and have to be recreated).
2013-02-11 21:12:14 -08:00
DavidLudwig
c89e8a60b2 converted tabs to spaces in iOS/UIKit PumpEvents code 2013-01-04 16:38:05 -05:00
Sam Lantinga
64ffa4ad74 Fixed bug 1679 - Error in buffer size setting in Haiku/BeOS audio driver
PulkoMandy

Just like in SDL, audio buffer sizes for BeOS and Haiku BSoundPlayer are sized
in bytes, not frames. SDL was feeding the wrong value, leading to buffers
smaller than expected and weird behaviour in some unsuspecting programs
(noticed it in HivelyTracker but others are likely affected as well. The fix is
fortunately very simple
2013-02-11 20:56:34 -08:00
Sam Lantinga
29481b26c7 Hopefully fixed the last of the C variable declaration problems which caused compile failures with Visual Studio. 2013-02-11 18:28:05 -08:00
Sam Lantinga
7f6b9c606b Fixed double-default case 2013-02-11 18:22:32 -08:00
Sam Lantinga
c0c9a2ea7d Fixed compiling SYN_DROPPED with older kernel headers 2013-02-11 18:22:17 -08:00
Sam Lantinga
cb6ecc89fb Fixed compiler warnings 2013-02-11 18:18:34 -08:00
Sam Lantinga
7d93f17562 Fixed C variable declarations 2013-02-11 18:13:52 -08:00
Sam Lantinga
db8271ef1a Backed out use of @autorelease keyword for now, since it's not supported by older Xcode versions. 2013-02-11 17:39:52 -08:00
Sam Lantinga
421b23644a Fixed compiler warning (and undefined behavior) in game controller event filter. 2013-02-11 17:25:58 -08:00
Sam Lantinga
fe9e22362c Workaround for NVIDIA bug in glXSwapIntervalEXT.
This works around a bug in NVIDIA's implementation of
       glXSwapIntervalEXT, where it ignores updates to what it *thinks* is the
       current value, even though glXQueryDrawable returns a different value.

       Bug reported to NVIDIA and will hopefully be a part of 319.xx.

       Also a fix for invalidly treating glXSwapIntervalEXT as having an int
       return value (it's void).
2013-02-11 17:02:13 -08:00
Sam Lantinga
643973b4d3 Patch - Joystick coef[] doesn't support dial with low number of positions.
Simon <simon@mungewell.org>

I am working on joystick support for the SRW-S1 gaming wheel on Linux,
this device has 3 dials with only a few positions each.

At present SDL2 only fail to report the highest position value, due to the
interger math used for coef[]'s.

So with a 4 position switch I have input values (with evtest)
--
Event: time 1358967246.173186, type 3 (EV_ABS), code 9 (ABS_GAS), value 2
Event: time 1358967246.173186, -------------- SYN_REPORT ------------
Event: time 1358967246.369150, type 3 (EV_ABS), code 9 (ABS_GAS), value 1
Event: time 1358967246.369150, -------------- SYN_REPORT ------------
Event: time 1358967246.930277, type 3 (EV_ABS), code 9 (ABS_GAS), value 0
Event: time 1358967246.930277, -------------- SYN_REPORT ------------
Event: time 1358967249.369832, type 3 (EV_ABS), code 9 (ABS_GAS), value 1
Event: time 1358967249.369832, -------------- SYN_REPORT ------------
Event: time 1358967249.514382, type 3 (EV_ABS), code 9 (ABS_GAS), value 2
Event: time 1358967249.514382, -------------- SYN_REPORT ------------
Event: time 1358967249.626189, type 3 (EV_ABS), code 9 (ABS_GAS), value 3
Event: time 1358967249.626189, -------------- SYN_REPORT ------------
--

Testjoystick reports
--
Joystick has 6 axes, 1 hats, 0 balls, and 17 buttons
Joystick 0 axis 5 value: 32767
Joystick 0 axis 5 value: 0
Joystick 0 axis 5 value: -32768
Joystick 0 axis 5 value: 0
Joystick 0 axis 5 value: 32767
Joystick 0 axis 5 value: 0
Joystick 0 axis 5 value: -32768
--

The attached patch 'shifts' the coef[], so that 1/2 values can be
computed/seen and allows testjoystick to report correctly.
--
Joystick has 6 axes, 1 hats, 0 balls, and 17 buttons
Joystick 0 axis 5 value: -10923
Joystick 0 axis 5 value: 10922
Joystick 0 axis 5 value: 32767
Joystick 0 axis 5 value: 10922
Joystick 0 axis 5 value: -10923
Joystick 0 axis 5 value: -32768
Joystick 0 axis 5 value: -10923
Joystick 0 axis 5 value: 10922
Joystick 0 axis 5 value: 32767
--

Cheers,
Simon
2013-02-11 16:51:00 -08:00
Sam Lantinga
51d13ff399 Fix for dropped joystick events contributed by Simon <simon@mungewell.org>
In my system SDL2 is dropping a chunk of joystick events, which result in
a 'stuck brake/accelerator' whilst playing a racing simulator. This
basically means SDL2 is unsuitable for use at this point...

The patch below detects this situation and forces a re-read of all
attached joystick axis - thus resync to the correct/current pedal
positions.
2013-02-11 16:45:24 -08:00
Sam Lantinga
f18bbe48c3 tree 97aca305664b
parent 6a9ca692cd65
author Edward Rudd <urkle@outoforder.cc> 1358030048 18000
committer Edward Rudd <urkle@outoforder.cc> 1358030048 18000
revision 6822
branch default

rework and fix handling of hat to button mappings

- doesn't assume it's always mapped to dpad
- properly handles multiple hats (up to 4)
- properly handles multiple presses (e.g. up and right)
- properly handles multiple gamepads
2013-02-11 11:21:54 -08:00
Sam Lantinga
209207f64f tree 0c86a223596d
parent 44e12dd8ee8e
author Edward Rudd <urkle@outoforder.cc> 1358030047 18000
committer Edward Rudd <urkle@outoforder.cc> 1358030047 18000
revision 6821
branch default

Fix a bad mapping from "axis" to "button"
2013-02-11 11:21:19 -08:00
Sam Lantinga
36788932ef tree 8cbca1e6b293
parent 7ddddb71cec9
author Edward Rudd <urkle@outoforder.cc> 1358030045 18000
committer Edward Rudd <urkle@outoforder.cc> 1358030045 18000
revision 6820
branch default

Consolidate iterating the SupportedControllers array

also fix memory leak when controller mapping not found
2013-02-11 11:20:49 -08:00
Andreas Schiffler
5bda818e44 Add SDL_test test suite; add fuzzer test cases; fix fuzzer bug; fix compiler warnings 2013-02-08 07:14:50 -08:00
Sam Lantinga
964388e7ee Fixed bug 1682 - Resize collapses window instantly to a size of 0 x 124.
Marco Schmidt

After sizing my main window (the only window in my application) through
grabbing the window border with the mouse the window collapses instantly to a
size of 0 x 124. In my application I can not resize the window to a normal size
again.

I tried to reproduce the problem - and here a the minimal steps I found.

I'm running WIN8 x64, VS2012Pro, HG SDL-2.0 tip, WIN32-Build.

Minimal steps to reproduce my problem:

- open solution SDL_VS2012
- make testdraw2 the start project
- pass command line option --resize to the debuggee testdraw2
- starting the application testdraw2
- try to resize the window
- the application window resizes to a minimal size 0 x 124.
- the application crashes to divide by zero .... (this is only the aftermath
but a unhandled error condition)
2013-02-08 01:04:07 -08:00
Sam Lantinga
1554db5140 Fixed bug 1689 - Leaks galore in OS X Cocoa code.
Edward Rudd

This is to document the various leaks I'm finding in the Cocoa code in SDL 2.
2013-02-08 00:54:08 -08:00
Michael Sartain
cd97f47263 Add defines to disable setlocale and fork. Disable that code by default for now. 2013-02-05 12:10:54 -08:00
Michael Sartain
0a917a7d06 Use left facing arrow instead of right facing arrow for system cursor. 2013-02-05 12:09:59 -08:00
stopiccot
33b6a3e4a4 Replaced manual NSAutoreleasePool handing with @autorelease 2013-01-06 19:04:53 +03:00
Sam Lantinga
4a43f4e918 Fixed setting the GUID for Bluetooth joysticks 2013-02-01 17:09:01 -08:00
Andreas Schiffler
4897e7608e Add tests to audio suite; update harness filter logic 2013-01-31 08:45:30 -08:00
Sam Lantinga
141e9126f1 Don't reset the mouse, that's actually bad behavior most of the time for windowed applications. 2013-01-27 20:37:14 -08:00
Gabriel Jacobo
6e6eb805ad Fixes potential global reference leak on Android, by Philipp Wiesemann 2013-01-27 21:43:20 -03:00
Sam Lantinga
6c353b0768 Fixed direction of rotation with OpenGL ES 2 2013-01-27 15:52:56 -08:00
Sam Lantinga
5ce01eeb65 Fixed crash when the game controller mapping hint is set - the hint was duplicated and not null terminated. 2013-01-25 14:25:19 -08:00
Andreas Schiffler
0dfee1f016 Add additional input validation to SDL_BuildAudioCVT; add additional tests to automation (audio, rwops) 2013-01-21 09:16:27 -08:00
Ryan C. Gordon
d6b0e76a5b Cleaned out a few C++ single-line comments.
Should we bother doing this anymore? Is there really a C compiler we care
 about that doesn't support this?
2013-01-21 02:50:11 -05:00
Gabriel Jacobo
d11589598e Fixes bug 1696, thanks Paul Geerts!
Also adds a bit of information about asset loading on Android.
2013-01-14 20:20:33 -03:00
Andreas Schiffler
0d106358b9 Add input validation to SDL_GetKeyFromScancode; fix compiler warning in testautomation driver on Linux; update keyboard test suite 2013-01-13 22:55:26 -08:00
Andreas Schiffler
0720db59b2 Update SDL_InvalidParamError to take param name; add additional fuzzer function; add new tests to keyboard test suite; improve surface test suite 2013-01-12 22:58:12 -08:00
Ryan C. Gordon
6cc9a81242 Fixed logic bug. 2013-01-12 14:06:58 -05:00
Ryan C. Gordon
63d660e4e0 Fix a memory leak. We need to clean up our autorelease pool code at some point. 2013-01-12 14:04:51 -05:00
Andreas Schiffler
298c11033b Add new internal error message for invalid parameters; add validation of input rect in SDL_SetTextInputRect; add test cases for SDL_SetTextInputRect to keyboard suite 2013-01-11 20:36:39 -08:00
Gabriel Jacobo
f997d045c5 Android: Access APK files using AssetFileDescriptor 2013-01-08 09:30:53 -03:00
Andreas Schiffler
6ff0a41247 Merged with tip 2013-01-07 07:39:46 -08:00
Andreas Schiffler
f5ad14007e Add a few keyboard tests; fix missing input validation in SDL_GetKeyFromName 2013-01-07 07:39:15 -08:00
Gabriel Jacobo
69acbe58d2 Fix Audio Buffer allocation on Android >= 4.2 2013-01-07 12:22:26 -03:00
Sam Lantinga
293fc899d7 Fixed compiler warnings in edid-parse.c 2012-12-26 07:11:56 -08:00
Sam Lantinga
e6bd0c20f8 Implemented SDL_GetDisplayName() for X11, which requires the XRandR extension.
It turns out there's all kinds of good information in the EDID data for a monitor...
2012-12-31 18:32:30 -08:00
Edward Rudd
1c9d2df9b4 Corrected call to glXMakeCurrent() when setting a NULL context.
Fixes Bugzilla #1675.
2012-12-31 19:16:52 -05:00