kc3-lang/SDL/src/core/linux

Branch :


Log

Author Commit Date CI Message
84fb4893 2017-10-10 20:22:15 Check SDL_UDEV_DYNAMIC first, then SDL_UDEV_LIBS separately
312da262 2017-10-05 09:37:28 Fixed bug 3854 - arguments to dbus_type_is_basic() were incorrect Aaron As of 2.0.6, all of my games are failing with the following error: process 31778: arguments to dbus_type_is_basic() were incorrect, assertion "dbus_type_is_valid (typecode) || typecode == DBUS_TYPE_INVALID" failed in file dbus-signature.c line 322. This is normally a bug in some application using the D-Bus library. D-Bus not built with -rdynamic so unable to print a backtrace (patch by Ozkan Sezer)
e564da78 2017-09-29 10:15:44 revert files I didnt mean to commit!
e27f12e0 2017-09-29 10:07:37 wayland: Fix bug 3814 -Wmissing-field-initializers
fb835f9e 2017-08-14 20:22:19 Fixed bug 2330 - Debian bug report: SDL2 X11 driver buffer overflow with large X11 file descriptor manuel.montezelo Original bug report (note that it was against 2.0.0, it might have been fixed in between): http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=733015 -------------------------------------------------------- Package: libsdl2-2.0-0 Version: 2.0.0+dfsg1-3 Severity: normal Tags: patch I have occasional crashes here caused by the X11 backend of SDL2. It seems to be caused by the X11_Pending function trying to add a high number (> 1024) file descriptor to a fd_set before doing a select on it to avoid busy waiting on X11 events. This causes a buffer overflow because the file descriptor is larger (or equal) than the limit FD_SETSIZE. Attached is a possible workaround patch. Please also keep in mind that fd_set are also used in following files which may have similar problems. src/audio/bsd/SDL_bsdaudio.c src/audio/paudio/SDL_paudio.c src/audio/qsa/SDL_qsa_audio.c src/audio/sun/SDL_sunaudio.c src/joystick/linux/SDL_sysjoystick.c -------------------------------------------------------- On Tuesday 24 December 2013 00:43:13 Sven Eckelmann wrote: > I have occasional crashes here caused by the X11 backend of SDL2. It seems > to be caused by the X11_Pending function trying to add a high number (> > 1024) file descriptor to a fd_set before doing a select on it to avoid busy > waiting on X11 events. This causes a buffer overflow because the file > descriptor is larger (or equal) than the limit FD_SETSIZE. I personally experienced this problem while hacking on the python bindings package for SDL2 [1] (while doing make runtest). But it easier to reproduce in a smaller, synthetic testcase.
de91b124 2017-08-14 06:28:21 Fixed bug 3745 - specify SDLCALL as the calling convention for API callbacks Patches contributed by Ozkan Sezer
be005b7c 2017-07-28 12:00:10 evdev: Fix 'Syscall param ioctl(TIOCLINUX) points to uninitialised byte' https://pastebin.com/raw/tQjG0kG0
a725efa4 2017-06-15 23:30:50 linux: Fixed using wrong constant for input text size.
22c221f3 2017-06-11 22:30:58 linux: Changed internal functions to be static.
b135557d 2017-05-29 02:48:51 linux: Don't crash if fcitx support is requested but unavailable. Fixes Bugzilla #3642.
a1faea98 2017-05-29 00:54:08 fcitx: removed incompatibly-licensed code.
1c5f483a 2017-05-29 00:51:02 linux: removed IBus_utf8_strlen(), use SDL_utf8strlen() instead.
643f1cb7 2017-05-28 07:14:11 power: Add Linux org.freedesktop.UPower D-Bus implementation. Fixes Bugzilla #3485. (I think.)
b3f94acb 2017-05-28 07:11:52 linux: Simplify D-Bus interface, remove lots of boilerplate.
191f578b 2017-05-28 07:08:10 linux: Make system D-Bus connection available (in addition to session).
90ed3daa 2017-05-26 22:45:52 Changed messages about not recognized keys to include discourse link.
f6eb23a6 2017-04-09 23:00:42 linux: Changed two variables to be static.
42d02890 2017-03-04 23:05:11 Linux: Fixed error message.
ad7c26ff 2017-01-09 11:58:01 We only need the first few keymaps corresponding to the following constants: K_NORMTAB, K_SHIFTTAB, K_ALTTAB, K_ALTSHIFTTAB In the normal case we'll load all the keymaps from the kernel, but this reduces the size of the SDL library for the fallback case when we can't get to the tty.
e0a40fb6 2017-01-09 02:54:42 Implemented full evdev keyboard text support This is based on the Linux kernel driver, and has fallback mapping tables in case we aren't connected to a virtual terminal.
49292705 2017-01-08 20:03:18 Fixed bug 3545 - SDL_EVDEV_do_text_input() may be too eager to find error cases Rob I've ran into an issue where I successfully receive SDL_KEY[UP,DOWN] events but not SDL_TEXTINPUT or SDL_TEXTEDITING. In my case the code in SDL_EVDEV_do_text_input() is returning early (on error) prior to calling SDL_SendKeyboardText(). I'm running on the RaspberryPi 3, without X11. In SDL_EVDEV_do_text_input() there is a condition to check keysyms with a type value below 0xf0, then subtract 0xf0 from type. Without understanding the purpose of this code, I disabled it, recompiled, and I'm getting correct SDL_TEXTINPUT events. I'm going to guess that my hack/fix is going to be problematic in some other environment, but after some initial testing it looks like everything is running fine in my setup.
7b66295e 2017-01-08 19:04:38 Removed console check, let the kernel decide whether muting is appropriate on this terminal. We don't fail the init if we can't mute the terminal (we might be running from ssh, or on a system without virtual terminals, etc.)
b8ab4eb9 2017-01-08 10:15:22 SDL_evdev.c: fix building against old kernel headers (K_OFF may not be defined.)
7e505b0d 2017-01-07 16:49:23 Don't fail if we can't open the tty, this can be a legitimate use case.
61a3ba30 2017-01-07 17:09:14 Replaced a few single-line "//" comments.
e9c2dcda 2017-01-07 10:13:04 Fixed bug 3469 - Keypresses leak to the console with 2.0.5 tvc I believe this patch should fix it, instead of looping through all the tty's and seemingly selecting the wrong one and corrupting the console I've just made SDL open /dev/tty which is the console attached to the current process anyway.
41be9756 2017-01-05 23:26:13 Fixed bug 3546 - SDL_EVDEV_is_console() uses type of wrong size when calling ioctl Rob When calling ioctl(fd, KDGKBTYPE, &type) in SDL_EVDEV_is_console(), we declare type as an 'int'. This should be a 'char'. The subsequent syscall, and kernel code, only writes the lower byte of the word. See: http://lxr.free-electrons.com/source/drivers/tty/vt/vt_ioctl.c?v=4.4#L399 ucval = KB_101; ret = put_user(ucval, (char __user *)arg); I've observed intermittent behavior related to this, and I can force an error condition by using an int initialized to 0xFFFFFFFF. The resulting ioctl will set type to 0XFFFFFF02, and the conditional return in SDL_EVDEV_is_console() will fail. Recommend changing to char, or masking off unused bits.
45b774e3 2017-01-01 18:33:28 Updated copyright for 2017
b4e069e7 2016-12-26 02:12:21 Fixed bug 3517 - Compiler warnings with gcc -Wstrict-prototypes felix Compiling even a simple SDL2 'hello world' program with gcc -Wstrict-prototypes (GCC 6.2.1) results in warnings like: /usr/include/SDL2/SDL_gamecontroller.h:143:1: attention : function declaration isn't a prototype [-Wstrict-prototypes] extern DECLSPEC int SDLCALL SDL_GameControllerNumMappings(); ^~~~~~ It seems there is a missing 'void' between the parentheses.
1e8f074c 2016-11-29 05:34:20 Avoid conflicts with multiple versions of udev by first trying the library that is linked with the executable, if any, and then picking the one that is in the build environment. This fixes joystick detection for applications using the Steam Linux Runtime
36156335 2016-11-20 21:34:54 Renaming of guard header names to quiet -Wreserved-id-macro Patch contributed by Sylvain
0d24495b 2016-11-15 01:24:58 Removed unused constants Except for SDL_bmp.c where they are historically interesting and I've left them in.
57d01d7d 2016-11-13 22:57:41 Patch from Sylvain to fix clang warnings
539afc5d 2016-11-01 10:33:44 Fixed bug 3473 - can't build on linux with an old kernel
099e8a68 2016-10-15 20:02:17 Linux: Fixed compile warnings about unused variables.
3f38bd91 2016-10-14 08:22:48 Fixed warning about redefining DECLSPEC
3663dbe8 2016-10-14 08:20:40 Fixed warning about missing field initializers in SDL_DBusContext Static variables are automatically initialized to zero.
f3502c3c 2016-10-14 01:04:21 Fixed building with cmake when fcitx isn't installed
9d0e0749 2016-10-12 23:36:29 Linux: Removed redundant function call.
42f85aa2 2016-10-08 11:30:07 Fixed building and using fcitx IME support on Linux
808c75d1 2016-10-07 18:57:40 Fixed bug 2824 - Add Fcitx Input Method Support Weitian Leung Just moved ibus direct call to SDL_IME_* related functions, and adds fcitx IME support (uses DBus, too), enable with env: SDL_IM_MODULE=fcitx (ibus still the default one)
1051dceb 2016-10-04 03:42:42 Fixed compiler warning about missing field initializers
ac7d1174 2016-10-01 15:04:13 Fixed build on older Raspberry Pi environments
a0d3e0d6 2016-10-01 14:56:53 Fixed warning and code style in SDL_evdev.c
1a31bbe2 2016-10-01 13:51:56 Fixed bug 3157 - Rudimentary touchscreen support in SDL_evdev (supports Raspberry Pi) tvc I've spent the last few days implementing touchscreen support in core/linux/SDL_evdev.c. It's fairly rudimentary at the moment, as can be seen from the multiple TODO's and FIXME's littered throughout, but I'm mainly submitting this patch for review. I've tested this patch on my Raspberry Pi 2 with the official touchscreen and it works fantastically, reporting all 10 multitouch points. I'm happy to work on this further, the evdev logic also needs a bit of a cleanup I think (I may have included a few changes). But if it's good enough in its current state to be committed then I'm sure there'd be plenty of people pleased, as currently the only other framework/library that supports touchscreens on the Raspberry Pi is Kivy.
42065e78 2016-01-02 10:10:34 Updated copyright to 2016
82eec4b6 2015-06-24 17:55:38 Fixed whitespace in SDL_evdev.c
9f50d63d 2015-06-24 17:54:39 Fixed an issue with mouse/keyboard removal Sometimes, on removal SDL_EVDEV_udev_callback() gets called with zero udev_class. This in turn seems to be caused the SDL_udev.c:guess_device_class() failing to find the attributes of the parent device. Apparently this is normal, attributes are not guaranteed to be in place during removal, depending on timing. This lack of attributes causes guess_device_class() to return zero. This fix mimics the code in linux/SDL_sysjoystick.c:joystick_udev_callback() which effectively has the same fix already in place.
0e45984f 2015-06-21 17: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().
71468742 2015-06-12 11:58:31 Make some string literals "const char *", not "char *" (thanks, Martin!). Fixes Bugzilla #3007.
699f879a 2015-06-07 17:54:39 Fixed a memory leak (thanks, Zack!). We should probably rework this piece of code a little more after 2.0.4 ships, though. Fixes Bugzilla #3004.
36ecb766 2015-06-01 01:25:22 Changed a static function to match the naming scheme of rest of source file.
2c4a6ea0 2015-05-26 06:27:46 Updated the copyright year to 2015
507157ab 2015-05-25 16:22:09 Wait for devices to finish initializing when inserted, before using them. Fixes hotplug issue with XBox 360 game controller.
b72938c8 2015-04-20 12: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-10 23:30:31 Fixed an iOS view orientation issue when SDL_GL_CreateContext or SDL_CreateRenderer is called.
3e4a8ce1 2015-04-01 19:18:56 Fixed detecting the NVIDIA controller which shows up as both a mouse and a game controller
c7ec9c1d 2015-04-01 16:11:37 handle the case where the ibus address can't be found. (prevents nasty crash)
a4458a70 2015-03-20 19:47:03 Fix DBus error message if IBus couldn't be initialized.
dae40bff 2015-02-27 21:17:29 [IBus] Only register interest in messages sent to our input context.
b88ca1b4 2015-02-10 16: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
42d9cf69 2015-02-01 21:08:54 [ibus] Send an empty TextEditing event when the text is cleared by pressing backspace.
b48e54aa 2015-01-26 22: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.
708a43f5 2014-12-13 13:20:19 Treat any key device as a keyboard This matches commit d325f1bbbab4 for when udev is not running
70438be2 2014-12-03 10: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!
5b5823ee 2014-11-23 21:09:54 add in support for passing down the "natural" (or flipped) scrolling direction in the MouseWheelEvent event
9c398852 2014-11-22 22:20:40 Corrected header file documentation comment.
5df970a6 2014-10-16 09:41:42 [udev] Fixes #2654, ID_INPUT_KEY devices are ignored. Also added some references to udev code where these flags are set.
89127c2d 2014-10-15 09:10:50 Fixed input device detection on systems that aren't running the udev daemon
639b39c4 2014-10-15 09:09:57 Fixed crash if the event subsystem didn't initialize properly
24c86b55 2014-09-11 19: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
9d54a900 2014-08-23 19:06:54 May have fixed the Linux build again
fe4bc5ab 2014-08-23 11:00:16 Fixed Linux build
a79ed6ce 2014-08-21 23:22:46 Fix declaration-after-statement errors in ibus code.
5e1f1589 2014-08-21 23:15:17 Adjusted code style slightly for SDL_ibus.c
38b49c30 2014-08-19 21:59:56 Changed the name of the IME hint to match the naming convention in SDL
90bc642f 2014-08-19 23:31:50 Add a SDL_IM_INTERNAL_EDITING event to make IMs like iBus render editing text in its own UI instead of sending TEXTEDITING events. This is useful for applications that handle TEXTINPUT events but not TEXTEDITING events.
f4ddacf4 2014-08-19 23:17:28 Improvements to the IBus related code: + Handle HidePreeditText IBus signal. + Use SDL_GetKeyboardFocus instead of SDL_GetFocusWindow. + Move the X11 IBus SetFocus calls to the X11_DispatchFocus functions. + Simplify the IBus ifdefs when handling X11 KeyEvents. + Remove inotify watch when SDL_IBus_Quit is called.
6f84f37c 2014-08-19 22:28:53 Take the window border size into account when positioning the IBus candidate list.
75dacdb9 2014-07-18 14:10:45 Dont redeclare DBusMessage* msg;
1c6cd678 2014-07-06 22:15:31 Call dbus_shutdown to make valgrind happy.
41a39837 2014-06-18 20:11:39 Add IBus IME Support, move DBus code to its own file. (v3.3 squashed)
7ae52b17 2014-04-17 20: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.
3dcb451f 2014-04-09 21: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.
58edac3e 2014-02-02 00:53:27 Fixed bug 2374 - Update copyright for 2014... Is it that time already??
f848adff 2013-11-29 10:06:08 Improve Android pause/resume behavior.
7e1289af 2013-11-24 23: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.
4e1ee557 2013-11-16 12:02:09 Fixed bug 2231 - Move src/input/evdev into src/core/linux Ryan C. Gordon To keep the directory layout sane, we should probably move this one piece of source to the linux catch-all directory, instead of making it look like this is part of an SDL "input" subsystem.
90a219a3 2013-10-05 21:15:55 Fixed bug where a Logitech wireless keyboard with built-in mouse touchpad didn't get recongized as both devices.
9ceed73d 2013-09-28 13:28:19 Raspberry Pi support (also unified UDEV and EVDEV support)