src


Log

Author Commit Date CI Message
Ryan C. Gordon dd5277d6 2014-05-24T21:06:40 Fixed stack overflow in X11_CreateWindow() (thanks, rapha and Brad!). This should be a "long" which on a 64-bit system is likely to be > 32-bits, causing XGetICValues() to write past the end of the variable (and stack). Fixes Bugzilla #2513.
Ryan C. Gordon 846a3e07 2014-05-24T01:27:19 Added some FIXMEs.
Ryan C. Gordon f0e0f4ca 2014-05-24T01:25:27 Fixed whitespace.
Ryan C. Gordon a2710516 2014-05-24T01:23:57 Generated dynapi stuff for the new WinRT entry points.
Philipp Wiesemann 9bc47465 2014-05-18T21:11:30 Changed C++ style comments.
Philipp Wiesemann ca11d7c8 2014-05-17T22:02:25 Changed C++ style comments to fix pedantic warnings.
Philipp Wiesemann 0d196c30 2014-05-17T21:52:05 Removed unused standard library includes from gesture source.
Sam Lantinga e772f0df 2014-05-13T12:10:37 Added a binding for the NVIDIA Shield controller
Sam Lantinga 67350973 2014-05-13T11:32:36 Updated coding style to match the rest of SDL
David Ludwig 49cef77e 2014-05-10T23:39:54 WinRT: fixed the max-button count for WinPhone 8.1 message boxes Doh. The max button count on WinPhone 8.1 was set to three, not two. Any more than two leads to a crash.
David Ludwig ea99e0c0 2014-05-10T23:28:53 Added limited message-box support for Windows Phone 8.1 The Windows Phone 8.1 'MessageDialog' API only seems to support two buttons, despite the documentation for such mentioning support for three. Trying to use three or more buttons leads to an exception being thrown. As such, any attempt to use more than two buttons via SDL_ShowMessageBox (on Windows Phone 8.1) will lead to no message box getting shown, and the call returning an error. The Win32 MessageBox and dialog APIs are not available in WinRT apps, to note. More extensive message dialog support might be available at some point, if and when XAML support is more fully fleshed-out. I'm not certain of this, though.
Yuri Kunde Schlesner d12d7952 2014-05-10T21:48:46 Align pointer in SDL_memset before doing Uint32 loop Some more recent compilers emit SSE aligned store instructions for the loop, causing crashes if the destination buffer isn't aligned on a 32-bit boundary. This would also crash on platforms like ARM that require aligned stores. This fixes a crash inside SDL_FillRect that happens with the official x64 mingw build.
Gabriel Jacobo de0d349e 2014-05-10T16:50:05 Fixes #2512, handle configuration change messages sent by Wayland. Patch by Bryan Cain.
Gabriel Jacobo fb389950 2014-05-10T16:23:06 Fixes #2529, guard SDL_d3math.* with the proper defines
Gabriel Jacobo 536dd013 2014-05-10T16:13:22 Fixes #2519, clear error if using the default library path for EGL succeeds.
Sam Lantinga 1a4c0dac 2014-05-10T11:27:43 Temporary fix for bug 2494 - Crashes due to the non thread-safe SDL_malloc/SDL_free on Windows We'll define USE_LOCKS as a temporary fix until an alternative like ptmalloc, jemalloc, or nedmalloc can be investigated. http://www.malloc.de/en/ http://www.canonware.com/jemalloc/ http://www.nedprod.com/programs/portable/nedmalloc/ SDL allocates memory very infrequently, so this is probably a decent fix for a while.
David Ludwig 164e5b89 2014-05-09T21:28:52 WinRT: display-information code cleanups
David Ludwig d4f1d225 2014-05-09T20:32:06 Fixed bug: touch input on WinPhone 8.0 was wrong, in some cases When a Windows Phone 8.0 app was rotated to anything but Portrait mode, touch input coordinates, as well as virtual mouse coordinates, were usually getting reported as coming from the wrong part of the screen.
David Ludwig 0a879d63 2014-05-09T20:16:21 Fixed rendering-alignment issues on WinPhone 8.1, when the device was rotated If a Windows Phone 8.1 device was rotated to anything but Portrait mode, the Direct3D 11 renderer's output wouldn't get aligned correctly with the screen.
Brandon Schaefer b6148092 2014-05-06T15:08:43 eglGetProcAddress fails the same way on MIR as ANDROID does on arm. Thanks Sylvain Becker for the patch!
Ryan C. Gordon 2a7aa9bd 2014-05-06T00:13:07 Fix build on Windows targets without dxgi.h, like MingW32.
Dimitris Zenios 3672aeb4 2014-05-05T22:26:21 Export android jni functions even when build with -fvisibility=hidden flag
Dimitris Zenios 548a0ee7 2014-05-05T22:21:26 __ANDROID__ is the correct macro to check for an android system.ANDROID is only defined in NDK build system (.mk) and not in the standalone NDK.
Brandon Schaefer 7528f94c 2014-05-02T12:39:26 Remove code that found its way back into the diff
Brandon Schaefer 44a0f1d9 2014-05-02T12:33:19 Fix software rendering in the mir backend. The window assumed hardware buffer, which caused testdrawchessboard to fail to mmap a buffer.
David Ludwig ec5f6ad5 2014-04-30T21:12:47 WinRT: suppressed an unused param warning when building for Windows Phone 8.1
David Ludwig c5c1a2c6 2014-04-30T21:07:30 WinRT: preliminary support for building against the Windows Phone 8.1 SDK This is a step towards supporting "Universal" Windows apps, when building for Windows Phone. SDL can now build against the Windows Phone 8.1 SDK, and apps linked to it can run, however further work and testing is required as some previously Phone-only code appears to no longer be applicable for Windows Phone 8.1. The Windows 8.1 code paths does seem to be preferable, but should probably be tested and updated on a finer-grained basis. If in doubt, use the Windows Phone 8.0 projects for now, as located in VisualC-WinRT/WinPhone80_VS2012/ TODO: - look at any Windows Phone specific code paths in SDL, and see if Phone 8.1 should use the Windows Phone code path(s), or the Windows 8.x or 8.1 paths
David Ludwig c10afa48 2014-04-29T19:22:48 Fixed a linker error when building SDL/WinRT The Win32 APIs, VerifyVersionInfoW and VerSetConditionMask, are not currently available for use in WinRT apps. This change primarily #if[n]defs-out some calls to them.
Sam Lantinga d2fb8a2a 2014-04-26T11:23:55 Better compiler for Windows XP systems
J?rgen P. Tjern? 8b280091 2014-04-24T21:05:51 Mac: Correct the y-axis position after 870c7d21004b This fixes a bug where we'd offset positions by the height of the dock, if it was along the bottom of the screen. Fixes https://bugzilla.libsdl.org/show_bug.cgi?id=2509 Thanks to Alex Szpakowski for bug & patch.
Ryan C. Gordon 5d7562c7 2014-04-24T23:24:48 Mac OS X: Look for joystick hotplug in its own CFRunLoop. This allows the joystick hotplug to function without the main event loop (specifically: without SDL_INIT_VIDEO), and moves explicit polling for joysticks where it belongs at the low-level: in SDL_SYS_JoystickDetect(). This lets apps call SDL_JoystickUpdate() to get hotplug events and keep SDL_NumJoysticks() correct, as expected. As SDL_PumpEvents() (and SDL_PollEvents, etc) calls SDL_JoystickUpdate(), existing apps will function as before. Thanks to "raskie" on the forums for pointing this out!
Sam Lantinga dfea14d9 2014-04-23T13:54:47 Fixed cygwin build
Sam Lantinga 45dc89c2 2014-04-23T13:48:01 Fixed detecting output on second adapter CR: Sam Lantinga
Sam Lantinga 3e3570df 2014-04-23T13:47:57 Don't crash in WIN_GL_InitExtensions() if the OpenGL library couldn't be loaded
Sam Lantinga a5ce57bc 2014-04-23T13:47:52 Fixed compiler warning
Sam Lantinga acbc321c 2014-04-23T13:47:42 Don't try to load d3dcompiler_46.dll on Windows XP
Sam Lantinga af395e97 2014-04-23T13:47:35 Removed possible implicit memset()
J?rgen P. Tjern? beff5cec 2014-04-19T13:15:53 Mac: SDL_SetWindowPosition is now relative to the menubar. It used to be that SDL_SetWindowPosition was relative to the top of the screen, which didn't make sense. In addition, borderless windows can be positioned *below* the menubar, so SDL_SetWindowPosition(win, 0, 0) on a borderless window would hide ~30ish pixels of the window below the menubar.
J?rgen P. Tjern? defd90b6 2014-04-19T13:15:41 Render: Allow empty cliprect. This fixes an issue where an empty cliprect is treated the same as a NULL cliprect, causing the render backends to disable clipping. Also adds a new API, SDL_RenderIsClipEnabled(render) that allows you to differentiate between: - SDL_RenderSetClipRect(render, NULL) - SDL_Rect r = {0,0,0,0}; SDL_RenderSetClipRect(render, &r); Fixes https://bugzilla.libsdl.org/show_bug.cgi?id=2504
Sam Lantinga 36e11d87 2014-04-19T10:17:36 Fixed missing j
Brandon Schaefer 2540214e 2014-04-19T00:31:02 Mir 14.04 headers available that allow scroll + touch events.
Ryan C. Gordon 60e05040 2014-04-19T02:17:34 Fixed some issues reported on new Ubuntu 14.04 buildbots.
Sam Lantinga d2ea7cfe 2014-04-18T12:43:10 Fixed logic error loading DXGI
Sam Lantinga 03afd0de 2014-04-18T12:43:04 SDL_DXGIGetOutputInfo() checks input parameters and returns a boolean value whether or not it succeeded.
Sam Lantinga 6dd9ea8d 2014-04-17T21:00:25 Fixed bug 2496 - mouse left button double click event issue cplu When I double click on a window, the "clicks" field (newly added since 2.0.2) in SDL_MouseButtonEvent is 1 instead of 2. However, when I "tripple" click, "clicks" field is then 2. I'v look into the source code in SDL_windowsevents.c and found that when a double click event comes, WIN_WindowProc will get a WM_LBUTTONDBLCLK msg. The message sequence of a double click is:WM_LBUTTONDOWN->WM_LBUTTONUP->WM_LBUTTONDBLCLK->WM_LBUTTONUP.
Sam Lantinga 5a6f4d40 2014-04-17T20:51:28 Fixed bug 2485 - [PATCH] Wayland: cursor disappears permanently after window loses mouse focus Bryan Cain Using any SDL application with the Wayland backend under Weston, if the application sets a cursor with SDL_SetCursor, the cursor will work until the mouse pointer leaves the window. When the pointer re-enters the window, there will be no cursor displayed at all. I did some digging, and the reason for this is that SDL attaches the buffer to the cursor surface only once (during cursor creation) and assumes that it will stay attached. This is not how Wayland works, though - once the compositor is done rendering the buffer, it will release it, so it is no longer attached to the surface. When the cursor re-enters the window a second time, SDL sets the cursor to the same surface with no buffer attached, so no cursor is displayed. This is fixed by the attached patch, which makes SDL attach the buffer to the surface when the cursor is set, not when it is created.
Sam Lantinga 59690a4e 2014-04-17T20:21:10 Fixed bug 2482 - Wayland_CreateSystemCursor trying to load nonexistent "wait" cursor Bryan Cain Wayland_CreateSystemCursor tries to load a cursor named "wait" for two of the system cursor categories. This causes a segmentation fault when one of these cursors is used, because "wait" is not an actual cursor name in X11/Wayland cursor themes. I can't attach my patch since I'm on a mobile right now, but I can confirm that simply replacing "wait" with "watch" for both of its uses in Wayland_CreateSystemCursor (in SDL_waylandmouse.c) fixes the bug.
Sam Lantinga 7ae52b17 2014-04-17T20:18:50 Fixed bug 2477 - [PATCH] Joysticks do not work on RHEL6/CentOS6 systems Ashley Whetter RHEL6 and CentOS6 systems still use an old version of udev (147). It wasn't until udev 148 (Yep. 1 version off!) that the input class system changed from "ID_CLASS" to "ID_INPUT_{JOYSTICK,KEYBOARD,MOUSE,etc}" (http://lwn.net/Articles/364728/). Because SDL2 looks for the ID_INPUT_X field this means that it never detects any input devices on RHEL6 systems. I've attached a patch which fixes the problem. If no input devices are detected with "ID_INPUT_X" then SDL will fallback to looking for the old style "ID_CLASS" udev field instead. Because of the "big change" between udev versions I doubt it'll ever get upgraded on RHEL6, but because RHEL7 is on the way I don't know if this patch is worth merging. Hopefully it'll help anyone out that's having this problem though.
Sam Lantinga 5439f9dd 2014-04-17T20:15:44 Fixed window losing the SDL_WINDOW_FOREIGN flag if something tries to recreate it.
Sam Lantinga 2dacb60b 2014-04-17T20:06:02 Fixed bug 2086 - valgrind memory not released Sylvain Someone provided a patch for this, recently on the mailing list : ----- Hi, it is possible to skip the bug in libX11 by using the defaults for XNResourceName and XNResourceClass in `XCreateIC' (the table for the "Input Context Values" [1] in libX11-doc shows that a default is provided if it is not set). diff -ur SDL2-2.0.3~/src/video/x11/SDL_x11window.c SDL2-2.0.3/src/video/x11/SDL_x11window.c --- SDL2-2.0.3~/src/video/x11/SDL_x11window.c 2014-04-04 17:09:40.764307181 +0200 +++ SDL2-2.0.3/src/video/x11/SDL_x11window.c 2014-04-04 17:10:23.887765046 +0200 @@ -239,8 +239,7 @@ data->ic = X11_XCreateIC(videodata->im, XNClientWindow, w, XNFocusWindow, w, XNInputStyle, XIMPreeditNothing | XIMStatusNothing, - XNResourceName, videodata->classname, XNResourceClass, - videodata->classname, NULL); + NULL); } #endif data->created = created; Tito Latini [1] http://www.x.org/releases/X11R7.7-RC1/doc/libX11/libX11/libX11.html#Input_Context_Values
Sam Lantinga f6953cf4 2014-04-17T20:02:11 Fixed bug 2502 - Memory leak inside SDL_x11events.c -> X11_DispatchEvent(_THIS) bojko_1000 Code @566: if (data->xwindow) { Atom _net_frame_extents = X11_XInternAtom(display, "_NET_FRAME_EXTENTS", 0); Atom type = None; int format; unsigned long nitems = 0, bytes_after; unsigned char *property; X11_XGetWindowProperty(display, data->xwindow, _net_frame_extents, 0, 16, 0, XA_CARDINAL, &type, &format, &nitems, &bytes_after, &property); if (type != None && nitems == 4) { border_left = ((long*)property)[0]; border_right = ((long*)property)[1]; border_top = ((long*)property)[2]; border_bottom = ((long*)property)[3]; } } Code after _the fix_: if (data->xwindow) { Atom _net_frame_extents = X11_XInternAtom(display, "_NET_FRAME_EXTENTS", 0); Atom type = None; int format; unsigned long nitems = 0, bytes_after; unsigned char *property; X11_XGetWindowProperty(display, data->xwindow, _net_frame_extents, 0, 16, 0, XA_CARDINAL, &type, &format, &nitems, &bytes_after, &property); if (type != None && nitems == 4) { border_left = ((long*)property)[0]; border_right = ((long*)property)[1]; border_top = ((long*)property)[2]; border_bottom = ((long*)property)[3]; } X11_XFree(property); } I have found that leak with valgrind.
Sam Lantinga f4b77110 2014-04-17T19:52:15 Fixed bug 2503 - Loop indexing and event union errors in SDL_gesture.c Lasse ??rni While enabling $1 gesture support in the Urho3D engine which uses SDL2 I detected some errors in the gesture code in SDL_gesture.c: - In the function SDL_SaveAllDollarTemplates() the following line should use index variable j instead of i: rtrn += SaveTemplate(&touch->dollarTemplate[i], dst); - In the function SDL_SaveDollarTemplate() the following code should use index variable j instead of i: if (touch->dollarTemplate[i].hash == gestureId) { return SaveTemplate(&touch->dollarTemplate[i], dst); - In the function SDL_SendGestureDollar() the x & y coordinates are being written to the mgesture structure, which results in garbage due to dgesture and mgesture being different data structures inside the union. The coordinates should be written to dgesture.x & dgesture.y respectively
David Ludwig 63b46d3d 2014-04-17T12:43:51 WinRT: keyboard VirtualKey translation improvements from Sylvain Becker Changes included: - adding support for a few, additional, VirtualKey constants - removing accesses to 'windows_scancode_table', as the table's contents don't line up with WinRT virtual keys. Using Windows older VK_* constants may, however, be a good alternative in a future update.
Gabriel Jacobo 4bb6afef 2014-04-17T12:44:08 Comment out eglWaitGL from Android_GLES_SwapWindow Let's hope for the best! If anyone has a device affected by this removal, please file a bug!
J?rgen P. Tjern? fc9e3a69 2014-04-15T13:53:07 Mac: Don't prompt to reopen windows after crash. We don't support state serialization / resume, so disable the prompt that pops up asking if you want to reopen the windows.
David Ludwig 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.
Thomas Perl 929fd90e 2014-04-05T17:19:34 Wayland: Resize windows with 0x0 requested size to screen size This makes it in line with other platforms, where SDL_CreateWindow() with width=0, height=0 and SDL_WINDOW_FULLSCREEN opens a fullscreen window.
Sam Lantinga e14e0ef9 1970-01-01T04:04:21 Fixed crash if the OpenGL library hasn't been loaded yet