[arch-commits] Commit in sdl/repos (44 files)
Jan Steffens
heftig at archlinux.org
Thu Mar 30 21:11:52 UTC 2017
Date: Thursday, March 30, 2017 @ 21:11:51
Author: heftig
Revision: 291916
archrelease: copy trunk to extra-i686, extra-x86_64
Added:
sdl/repos/extra-i686/PKGBUILD
(from rev 291915, sdl/trunk/PKGBUILD)
sdl/repos/extra-i686/SDL-1.2.10-GrabNotViewable.patch
(from rev 291915, sdl/trunk/SDL-1.2.10-GrabNotViewable.patch)
sdl/repos/extra-i686/SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch
(from rev 291915, sdl/trunk/SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch)
sdl/repos/extra-i686/SDL-1.2.15-const_XData32.patch
(from rev 291915, sdl/trunk/SDL-1.2.15-const_XData32.patch)
sdl/repos/extra-i686/SDL-1.2.15-ignore_insane_joystick_axis.patch
(from rev 291915, sdl/trunk/SDL-1.2.15-ignore_insane_joystick_axis.patch)
sdl/repos/extra-i686/SDL-1.2.15-no-default-backing-store.patch
(from rev 291915, sdl/trunk/SDL-1.2.15-no-default-backing-store.patch)
sdl/repos/extra-i686/SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch
(from rev 291915, sdl/trunk/SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch)
sdl/repos/extra-i686/X11_KeyToUnicode.patch
(from rev 291915, sdl/trunk/X11_KeyToUnicode.patch)
sdl/repos/extra-i686/libsdl-1.2.15-resizing.patch
(from rev 291915, sdl/trunk/libsdl-1.2.15-resizing.patch)
sdl/repos/extra-i686/sdl-1.2.14-disable-mmx.patch
(from rev 291915, sdl/trunk/sdl-1.2.14-disable-mmx.patch)
sdl/repos/extra-i686/sdl-1.2.14-fix-mouse-clicking.patch
(from rev 291915, sdl/trunk/sdl-1.2.14-fix-mouse-clicking.patch)
sdl/repos/extra-x86_64/PKGBUILD
(from rev 291915, sdl/trunk/PKGBUILD)
sdl/repos/extra-x86_64/SDL-1.2.10-GrabNotViewable.patch
(from rev 291915, sdl/trunk/SDL-1.2.10-GrabNotViewable.patch)
sdl/repos/extra-x86_64/SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch
(from rev 291915, sdl/trunk/SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch)
sdl/repos/extra-x86_64/SDL-1.2.15-const_XData32.patch
(from rev 291915, sdl/trunk/SDL-1.2.15-const_XData32.patch)
sdl/repos/extra-x86_64/SDL-1.2.15-ignore_insane_joystick_axis.patch
(from rev 291915, sdl/trunk/SDL-1.2.15-ignore_insane_joystick_axis.patch)
sdl/repos/extra-x86_64/SDL-1.2.15-no-default-backing-store.patch
(from rev 291915, sdl/trunk/SDL-1.2.15-no-default-backing-store.patch)
sdl/repos/extra-x86_64/SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch
(from rev 291915, sdl/trunk/SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch)
sdl/repos/extra-x86_64/X11_KeyToUnicode.patch
(from rev 291915, sdl/trunk/X11_KeyToUnicode.patch)
sdl/repos/extra-x86_64/libsdl-1.2.15-resizing.patch
(from rev 291915, sdl/trunk/libsdl-1.2.15-resizing.patch)
sdl/repos/extra-x86_64/sdl-1.2.14-disable-mmx.patch
(from rev 291915, sdl/trunk/sdl-1.2.14-disable-mmx.patch)
sdl/repos/extra-x86_64/sdl-1.2.14-fix-mouse-clicking.patch
(from rev 291915, sdl/trunk/sdl-1.2.14-fix-mouse-clicking.patch)
Deleted:
sdl/repos/extra-i686/PKGBUILD
sdl/repos/extra-i686/SDL-1.2.10-GrabNotViewable.patch
sdl/repos/extra-i686/SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch
sdl/repos/extra-i686/SDL-1.2.15-const_XData32.patch
sdl/repos/extra-i686/SDL-1.2.15-ignore_insane_joystick_axis.patch
sdl/repos/extra-i686/SDL-1.2.15-no-default-backing-store.patch
sdl/repos/extra-i686/SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch
sdl/repos/extra-i686/X11_KeyToUnicode.patch
sdl/repos/extra-i686/libsdl-1.2.15-resizing.patch
sdl/repos/extra-i686/sdl-1.2.14-disable-mmx.patch
sdl/repos/extra-i686/sdl-1.2.14-fix-mouse-clicking.patch
sdl/repos/extra-x86_64/PKGBUILD
sdl/repos/extra-x86_64/SDL-1.2.10-GrabNotViewable.patch
sdl/repos/extra-x86_64/SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch
sdl/repos/extra-x86_64/SDL-1.2.15-const_XData32.patch
sdl/repos/extra-x86_64/SDL-1.2.15-ignore_insane_joystick_axis.patch
sdl/repos/extra-x86_64/SDL-1.2.15-no-default-backing-store.patch
sdl/repos/extra-x86_64/SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch
sdl/repos/extra-x86_64/X11_KeyToUnicode.patch
sdl/repos/extra-x86_64/libsdl-1.2.15-resizing.patch
sdl/repos/extra-x86_64/sdl-1.2.14-disable-mmx.patch
sdl/repos/extra-x86_64/sdl-1.2.14-fix-mouse-clicking.patch
---------------------------------------------------------------------------+
/PKGBUILD | 136 +++++++++
/SDL-1.2.10-GrabNotViewable.patch | 44 +++
/SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch | 146 ++++++++++
/SDL-1.2.15-const_XData32.patch | 32 ++
/SDL-1.2.15-ignore_insane_joystick_axis.patch | 40 ++
/SDL-1.2.15-no-default-backing-store.patch | 48 +++
/SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch | 88 ++++++
/X11_KeyToUnicode.patch | 104 +++++++
/libsdl-1.2.15-resizing.patch | 126 ++++++++
/sdl-1.2.14-disable-mmx.patch | 26 +
/sdl-1.2.14-fix-mouse-clicking.patch | 46 +++
extra-i686/PKGBUILD | 68 ----
extra-i686/SDL-1.2.10-GrabNotViewable.patch | 22 -
extra-i686/SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch | 73 -----
extra-i686/SDL-1.2.15-const_XData32.patch | 16 -
extra-i686/SDL-1.2.15-ignore_insane_joystick_axis.patch | 20 -
extra-i686/SDL-1.2.15-no-default-backing-store.patch | 24 -
extra-i686/SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch | 44 ---
extra-i686/X11_KeyToUnicode.patch | 52 ---
extra-i686/libsdl-1.2.15-resizing.patch | 63 ----
extra-i686/sdl-1.2.14-disable-mmx.patch | 13
extra-i686/sdl-1.2.14-fix-mouse-clicking.patch | 23 -
extra-x86_64/PKGBUILD | 68 ----
extra-x86_64/SDL-1.2.10-GrabNotViewable.patch | 22 -
extra-x86_64/SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch | 73 -----
extra-x86_64/SDL-1.2.15-const_XData32.patch | 16 -
extra-x86_64/SDL-1.2.15-ignore_insane_joystick_axis.patch | 20 -
extra-x86_64/SDL-1.2.15-no-default-backing-store.patch | 24 -
extra-x86_64/SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch | 44 ---
extra-x86_64/X11_KeyToUnicode.patch | 52 ---
extra-x86_64/libsdl-1.2.15-resizing.patch | 63 ----
extra-x86_64/sdl-1.2.14-disable-mmx.patch | 13
extra-x86_64/sdl-1.2.14-fix-mouse-clicking.patch | 23 -
33 files changed, 836 insertions(+), 836 deletions(-)
Deleted: extra-i686/PKGBUILD
===================================================================
--- extra-i686/PKGBUILD 2017-03-30 21:09:55 UTC (rev 291915)
+++ extra-i686/PKGBUILD 2017-03-30 21:11:51 UTC (rev 291916)
@@ -1,68 +0,0 @@
-# $Id$
-# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens at gmail.com>
-# Contributor: Allan McRae <allan at archlinux.org>
-# Contributor: dorphell <dorphell at archlinux.org>
-
-pkgname=sdl
-pkgver=1.2.15
-pkgrel=7
-pkgdesc="A library for portable low-level access to a video framebuffer, audio output, mouse, and keyboard"
-arch=('i686' 'x86_64')
-url="http://www.libsdl.org"
-license=('LGPL')
-depends=('glibc' 'libxext' 'libxrender' 'libx11')
-makedepends=('alsa-lib' 'mesa' 'libpulse' 'glu')
-optdepends=('alsa-lib: ALSA audio driver'
- 'libpulse: PulseAudio audio driver')
-options=('staticlibs')
-source=(http://www.libsdl.org/release/SDL-${pkgver}.tar.gz
- SDL-1.2.10-GrabNotViewable.patch
- SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch
- SDL-1.2.15-const_XData32.patch
- SDL-1.2.15-ignore_insane_joystick_axis.patch
- SDL-1.2.15-no-default-backing-store.patch
- SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch
- sdl-1.2.14-fix-mouse-clicking.patch
- sdl-1.2.14-disable-mmx.patch
- libsdl-1.2.15-resizing.patch
- X11_KeyToUnicode.patch)
-md5sums=('9d96df8417572a2afb781a7c4c811a85'
- '37ad001a4d2ff924a5fab356b49f8a78'
- '8d5a61a0adf1a302695a30141f402712'
- 'd6a1bfa054507f281338626e5f12d74b'
- 'e382e5b7449e95969c5ba4084b0aab39'
- '1b0578c76453813eb4eaf0125ce242db'
- '321377e38e2db7f1baf43c392e165dd5'
- '04d8c179f125e04bcd4c9d60e013c2d7'
- 'e5c16b7611f62c7cb25f0534eff68852'
- '3dd50347d8856160a9cbd7f80383a1f8'
- 'edea272dff4698470877c016d818918d')
-
-prepare() {
- cd SDL-$pkgver
- patch -Np1 -i ../SDL-1.2.10-GrabNotViewable.patch
- patch -Np1 -i ../SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch
- patch -Np1 -i ../SDL-1.2.15-const_XData32.patch
- patch -Np1 -i ../SDL-1.2.15-ignore_insane_joystick_axis.patch
- patch -Np1 -i ../SDL-1.2.15-no-default-backing-store.patch
-
- # https://bugs.freedesktop.org/show_bug.cgi?id=27222
- patch -Np1 -i ../SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch
-
- patch -Np1 -i ../sdl-1.2.14-fix-mouse-clicking.patch
- patch -Np1 -i ../sdl-1.2.14-disable-mmx.patch
- patch -Np1 -i ../libsdl-1.2.15-resizing.patch
- patch -Np1 -i ../X11_KeyToUnicode.patch
-}
-
-build() {
- cd SDL-$pkgver
- ./configure --prefix=/usr --disable-nasm --enable-alsa \
- --with-x --disable-rpath --disable-static
- make
-}
-
-package() {
- cd SDL-$pkgver
- make DESTDIR="$pkgdir" install
-}
Copied: sdl/repos/extra-i686/PKGBUILD (from rev 291915, sdl/trunk/PKGBUILD)
===================================================================
--- extra-i686/PKGBUILD (rev 0)
+++ extra-i686/PKGBUILD 2017-03-30 21:11:51 UTC (rev 291916)
@@ -0,0 +1,68 @@
+# $Id$
+# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens at gmail.com>
+# Contributor: Allan McRae <allan at archlinux.org>
+# Contributor: dorphell <dorphell at archlinux.org>
+
+pkgname=sdl
+pkgver=1.2.15
+pkgrel=8
+pkgdesc="A library for portable low-level access to a video framebuffer, audio output, mouse, and keyboard"
+arch=('i686' 'x86_64')
+url="https://www.libsdl.org"
+license=('LGPL')
+depends=('glibc' 'libxext' 'libxrender' 'libx11')
+makedepends=('alsa-lib' 'mesa' 'libpulse' 'glu')
+optdepends=('alsa-lib: ALSA audio driver'
+ 'libpulse: PulseAudio audio driver')
+options=('staticlibs')
+source=(https://www.libsdl.org/release/SDL-${pkgver}.tar.gz
+ SDL-1.2.10-GrabNotViewable.patch
+ SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch
+ SDL-1.2.15-const_XData32.patch
+ SDL-1.2.15-ignore_insane_joystick_axis.patch
+ SDL-1.2.15-no-default-backing-store.patch
+ SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch
+ sdl-1.2.14-fix-mouse-clicking.patch
+ sdl-1.2.14-disable-mmx.patch
+ libsdl-1.2.15-resizing.patch
+ X11_KeyToUnicode.patch)
+sha256sums=('d6d316a793e5e348155f0dd93b979798933fb98aa1edebcc108829d6474aad00'
+ 'ea2042b8a45a083b1447d5c56e52b23b79f2ddb0d717ec7b287b34ef71bd2d1a'
+ '292046466d52a2ebe995a0121404864e4ee0de2b6024203acb95bbd600844da0'
+ 'bab60b515a74b71650ee71d5a0075c77046a7bad48b061673c3798dbdd35446d'
+ '7586d6124d5452ad721ca6aa10eae09946d94854748e22f9c9c6fdca3d0aeb12'
+ '3941c44a5580df95c6868936cfc57ba3e7b6952fb8a3eb14f963d54d9d8ca8a4'
+ 'd296af5bb0d9856d049b4e5adb9dd995d2a1e51d76a6adf63457e65101a50620'
+ '8d178f13eb707e81f5f9d86bf7b609ae8f0bac937fb4a37ebcbf4bbc9b89e21b'
+ '17bb880dd2cb4922d4e3771d146660b9da8be8f1629a5cdaae7523d4a9d2bd7c'
+ '5160fb1c07b04480d98d45b89a0aa6e577f2ac4c3bace0c80b251e6aca1fb4a1'
+ 'b1ad9c60829b166e6b647006d6549ea657155e755cf574fcfc4b91b658654769')
+
+prepare() {
+ cd SDL-$pkgver
+ patch -Np1 -i ../SDL-1.2.10-GrabNotViewable.patch
+ patch -Np1 -i ../SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch
+ patch -Np1 -i ../SDL-1.2.15-const_XData32.patch
+ patch -Np1 -i ../SDL-1.2.15-ignore_insane_joystick_axis.patch
+ patch -Np1 -i ../SDL-1.2.15-no-default-backing-store.patch
+
+ # https://bugs.freedesktop.org/show_bug.cgi?id=27222
+ patch -Np1 -i ../SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch
+
+ patch -Np1 -i ../sdl-1.2.14-fix-mouse-clicking.patch
+ patch -Np1 -i ../sdl-1.2.14-disable-mmx.patch
+ patch -Np1 -i ../libsdl-1.2.15-resizing.patch
+ patch -Np1 -i ../X11_KeyToUnicode.patch
+}
+
+build() {
+ cd SDL-$pkgver
+ ./configure --prefix=/usr --disable-nasm --enable-alsa \
+ --with-x --disable-rpath --disable-static
+ make
+}
+
+package() {
+ cd SDL-$pkgver
+ make DESTDIR="$pkgdir" install
+}
Deleted: extra-i686/SDL-1.2.10-GrabNotViewable.patch
===================================================================
--- extra-i686/SDL-1.2.10-GrabNotViewable.patch 2017-03-30 21:09:55 UTC (rev 291915)
+++ extra-i686/SDL-1.2.10-GrabNotViewable.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -1,22 +0,0 @@
-Makes SDL-1.2 SDL_WM_GrabInput() non-blocking in case of SDL window is not
-viewable. Patch provided by <pbonzini at redhat.com>.
-See <http://bugzilla.libsdl.org/show_bug.cgi?id=1155>.
-
---- ./src/video/x11/SDL_x11wm.c 2007-12-31 04:48:13.000000000 +0000
-+++ ./src/video/x11/SDL_x11wm.c 2009-01-15 10:27:14.000000000 +0000
-@@ -351,13 +351,14 @@ SDL_GrabMode X11_GrabInputNoLock(_THIS,
- result = XGrabPointer(SDL_Display, SDL_Window, True, 0,
- GrabModeAsync, GrabModeAsync,
- SDL_Window, None, CurrentTime);
-- if ( result == GrabSuccess ) {
-+ if ( result == GrabSuccess || result == GrabNotViewable ) {
- break;
- }
- SDL_Delay(100);
- }
- if ( result != GrabSuccess ) {
- /* Uh, oh, what do we do here? */ ;
-+ return(SDL_GRAB_OFF);
- }
- /* Now grab the keyboard */
- XGrabKeyboard(SDL_Display, WMwindow, True,
Copied: sdl/repos/extra-i686/SDL-1.2.10-GrabNotViewable.patch (from rev 291915, sdl/trunk/SDL-1.2.10-GrabNotViewable.patch)
===================================================================
--- extra-i686/SDL-1.2.10-GrabNotViewable.patch (rev 0)
+++ extra-i686/SDL-1.2.10-GrabNotViewable.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -0,0 +1,22 @@
+Makes SDL-1.2 SDL_WM_GrabInput() non-blocking in case of SDL window is not
+viewable. Patch provided by <pbonzini at redhat.com>.
+See <http://bugzilla.libsdl.org/show_bug.cgi?id=1155>.
+
+--- ./src/video/x11/SDL_x11wm.c 2007-12-31 04:48:13.000000000 +0000
++++ ./src/video/x11/SDL_x11wm.c 2009-01-15 10:27:14.000000000 +0000
+@@ -351,13 +351,14 @@ SDL_GrabMode X11_GrabInputNoLock(_THIS,
+ result = XGrabPointer(SDL_Display, SDL_Window, True, 0,
+ GrabModeAsync, GrabModeAsync,
+ SDL_Window, None, CurrentTime);
+- if ( result == GrabSuccess ) {
++ if ( result == GrabSuccess || result == GrabNotViewable ) {
+ break;
+ }
+ SDL_Delay(100);
+ }
+ if ( result != GrabSuccess ) {
+ /* Uh, oh, what do we do here? */ ;
++ return(SDL_GRAB_OFF);
+ }
+ /* Now grab the keyboard */
+ XGrabKeyboard(SDL_Display, WMwindow, True,
Deleted: extra-i686/SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch
===================================================================
--- extra-i686/SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch 2017-03-30 21:09:55 UTC (rev 291915)
+++ extra-i686/SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -1,73 +0,0 @@
-# HG changeset patch
-# User Sam Lantinga <slouken at libsdl.org>
-# Date 1397799374 25200
-# Thu Apr 17 22:36:14 2014 -0700
-# Branch SDL-1.2
-# Node ID 0aade9c0203f717fe4b823a176c3c040f1a709f8
-# Parent 22a7f096bb9d4d596f35a93e33608825693462b0
-Fixed bug 2325 - SDL_EnableUNICODE sometimes drops keyboard events completely
-
-Rafał Mużyło
-
-The most annoying part of this bug is that though I've found it in two separate apps, I don't have a trivial testcase for it.
-
-The problem seems to be a condition race, as it's triggered quite randomly (therefore it will be hard to tell whether it really gets fixed, if a probable fix is found).
-
-While it's specific to SDL 1.2, it seems quite similar to the problem described and fixed in http://forums.libsdl.org/viewtopic.php?p=40503.
-
-Now, I should start describing the problem.
-
-A game uses Escape to open menu (the exact key might not be important). Upon opening, it calls SDL_EnableUNICODE(1). Upon closing it calls SDL_EnableUNICODE(0).
-
-I have an IME running.
-
-Game uses SDL_PollEvent to get the events.
-
-If Escape is pressed repeatedly, menu is opened and closed, till it eventually freezes in open state.
-"freezes" in this context means "app itself still runs, but no keyboard events are getting delivered (though - for example - mouse events still are)". "getting delivered" should mean "SDL_PollEvent is not receiving any".
-If it matters, the last delivered keyboard event is a keypress, the release never arrives.
-
-It seems (no guarantees, due to random nature of the freeze) that unsetting XMODIFIERS (which - AFAIU - will disable IME as far as SDL is concerned) prevents the freeze, therefore the reference to that SDL2 thread.
-
-diff -r 22a7f096bb9d -r 0aade9c0203f src/video/x11/SDL_x11events.c
---- a/src/video/x11/SDL_x11events.c Sun Dec 01 00:00:17 2013 -0500
-+++ b/src/video/x11/SDL_x11events.c Thu Apr 17 22:36:14 2014 -0700
-@@ -395,6 +395,8 @@
- {
- int posted;
- XEvent xevent;
-+ int orig_event_type;
-+ KeyCode orig_keycode;
-
- SDL_memset(&xevent, '\0', sizeof (XEvent)); /* valgrind fix. --ryan. */
- XNextEvent(SDL_Display, &xevent);
-@@ -410,9 +412,29 @@
- #ifdef X_HAVE_UTF8_STRING
- /* If we are translating with IM, we need to pass all events
- to XFilterEvent, and discard those filtered events immediately. */
-+ orig_event_type = xevent.type;
-+ if (orig_event_type == KeyPress || orig_event_type == KeyRelease) {
-+ orig_keycode = xevent.xkey.keycode;
-+ } else {
-+ orig_keycode = 0;
-+ }
- if ( SDL_TranslateUNICODE
- && SDL_IM != NULL
- && XFilterEvent(&xevent, None) ) {
-+ if (orig_keycode) {
-+ SDL_keysym keysym;
-+ static XComposeStatus state;
-+ char keybuf[32];
-+
-+ keysym.scancode = xevent.xkey.keycode;
-+ keysym.sym = X11_TranslateKeycode(SDL_Display, xevent.xkey.keycode);
-+ keysym.mod = KMOD_NONE;
-+ keysym.unicode = 0;
-+ if (orig_event_type == KeyPress && XLookupString(&xevent.xkey, keybuf, sizeof(keybuf), NULL, &state))
-+ keysym.unicode = (Uint8)keybuf[0];
-+
-+ SDL_PrivateKeyboard(orig_event_type == KeyPress ? SDL_PRESSED : SDL_RELEASED, &keysym);
-+ }
- return 0;
- }
- #endif
Copied: sdl/repos/extra-i686/SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch (from rev 291915, sdl/trunk/SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch)
===================================================================
--- extra-i686/SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch (rev 0)
+++ extra-i686/SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -0,0 +1,73 @@
+# HG changeset patch
+# User Sam Lantinga <slouken at libsdl.org>
+# Date 1397799374 25200
+# Thu Apr 17 22:36:14 2014 -0700
+# Branch SDL-1.2
+# Node ID 0aade9c0203f717fe4b823a176c3c040f1a709f8
+# Parent 22a7f096bb9d4d596f35a93e33608825693462b0
+Fixed bug 2325 - SDL_EnableUNICODE sometimes drops keyboard events completely
+
+Rafał Mużyło
+
+The most annoying part of this bug is that though I've found it in two separate apps, I don't have a trivial testcase for it.
+
+The problem seems to be a condition race, as it's triggered quite randomly (therefore it will be hard to tell whether it really gets fixed, if a probable fix is found).
+
+While it's specific to SDL 1.2, it seems quite similar to the problem described and fixed in http://forums.libsdl.org/viewtopic.php?p=40503.
+
+Now, I should start describing the problem.
+
+A game uses Escape to open menu (the exact key might not be important). Upon opening, it calls SDL_EnableUNICODE(1). Upon closing it calls SDL_EnableUNICODE(0).
+
+I have an IME running.
+
+Game uses SDL_PollEvent to get the events.
+
+If Escape is pressed repeatedly, menu is opened and closed, till it eventually freezes in open state.
+"freezes" in this context means "app itself still runs, but no keyboard events are getting delivered (though - for example - mouse events still are)". "getting delivered" should mean "SDL_PollEvent is not receiving any".
+If it matters, the last delivered keyboard event is a keypress, the release never arrives.
+
+It seems (no guarantees, due to random nature of the freeze) that unsetting XMODIFIERS (which - AFAIU - will disable IME as far as SDL is concerned) prevents the freeze, therefore the reference to that SDL2 thread.
+
+diff -r 22a7f096bb9d -r 0aade9c0203f src/video/x11/SDL_x11events.c
+--- a/src/video/x11/SDL_x11events.c Sun Dec 01 00:00:17 2013 -0500
++++ b/src/video/x11/SDL_x11events.c Thu Apr 17 22:36:14 2014 -0700
+@@ -395,6 +395,8 @@
+ {
+ int posted;
+ XEvent xevent;
++ int orig_event_type;
++ KeyCode orig_keycode;
+
+ SDL_memset(&xevent, '\0', sizeof (XEvent)); /* valgrind fix. --ryan. */
+ XNextEvent(SDL_Display, &xevent);
+@@ -410,9 +412,29 @@
+ #ifdef X_HAVE_UTF8_STRING
+ /* If we are translating with IM, we need to pass all events
+ to XFilterEvent, and discard those filtered events immediately. */
++ orig_event_type = xevent.type;
++ if (orig_event_type == KeyPress || orig_event_type == KeyRelease) {
++ orig_keycode = xevent.xkey.keycode;
++ } else {
++ orig_keycode = 0;
++ }
+ if ( SDL_TranslateUNICODE
+ && SDL_IM != NULL
+ && XFilterEvent(&xevent, None) ) {
++ if (orig_keycode) {
++ SDL_keysym keysym;
++ static XComposeStatus state;
++ char keybuf[32];
++
++ keysym.scancode = xevent.xkey.keycode;
++ keysym.sym = X11_TranslateKeycode(SDL_Display, xevent.xkey.keycode);
++ keysym.mod = KMOD_NONE;
++ keysym.unicode = 0;
++ if (orig_event_type == KeyPress && XLookupString(&xevent.xkey, keybuf, sizeof(keybuf), NULL, &state))
++ keysym.unicode = (Uint8)keybuf[0];
++
++ SDL_PrivateKeyboard(orig_event_type == KeyPress ? SDL_PRESSED : SDL_RELEASED, &keysym);
++ }
+ return 0;
+ }
+ #endif
Deleted: extra-i686/SDL-1.2.15-const_XData32.patch
===================================================================
--- extra-i686/SDL-1.2.15-const_XData32.patch 2017-03-30 21:09:55 UTC (rev 291915)
+++ extra-i686/SDL-1.2.15-const_XData32.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -1,16 +0,0 @@
-libX11-1.5.99.901 has changed prototype of _XData32
-
-<http://bugzilla.libsdl.org/show_bug.cgi?id=1769>
-
-diff -r b6b2829cd7ef src/video/x11/SDL_x11sym.h
---- a/src/video/x11/SDL_x11sym.h Wed Feb 27 15:20:31 2013 -0800
-+++ b/src/video/x11/SDL_x11sym.h Wed Mar 27 16:07:23 2013 +0100
-@@ -165,7 +165,7 @@
- */
- #ifdef LONG64
- SDL_X11_MODULE(IO_32BIT)
--SDL_X11_SYM(int,_XData32,(Display *dpy,register long *data,unsigned len),(dpy,data,len),return)
-+SDL_X11_SYM(int,_XData32,(Display *dpy,register _Xconst long *data,unsigned len),(dpy,data,len),return)
- SDL_X11_SYM(void,_XRead32,(Display *dpy,register long *data,long len),(dpy,data,len),)
- #endif
-
Copied: sdl/repos/extra-i686/SDL-1.2.15-const_XData32.patch (from rev 291915, sdl/trunk/SDL-1.2.15-const_XData32.patch)
===================================================================
--- extra-i686/SDL-1.2.15-const_XData32.patch (rev 0)
+++ extra-i686/SDL-1.2.15-const_XData32.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -0,0 +1,16 @@
+libX11-1.5.99.901 has changed prototype of _XData32
+
+<http://bugzilla.libsdl.org/show_bug.cgi?id=1769>
+
+diff -r b6b2829cd7ef src/video/x11/SDL_x11sym.h
+--- a/src/video/x11/SDL_x11sym.h Wed Feb 27 15:20:31 2013 -0800
++++ b/src/video/x11/SDL_x11sym.h Wed Mar 27 16:07:23 2013 +0100
+@@ -165,7 +165,7 @@
+ */
+ #ifdef LONG64
+ SDL_X11_MODULE(IO_32BIT)
+-SDL_X11_SYM(int,_XData32,(Display *dpy,register long *data,unsigned len),(dpy,data,len),return)
++SDL_X11_SYM(int,_XData32,(Display *dpy,register _Xconst long *data,unsigned len),(dpy,data,len),return)
+ SDL_X11_SYM(void,_XRead32,(Display *dpy,register long *data,long len),(dpy,data,len),)
+ #endif
+
Deleted: extra-i686/SDL-1.2.15-ignore_insane_joystick_axis.patch
===================================================================
--- extra-i686/SDL-1.2.15-ignore_insane_joystick_axis.patch 2017-03-30 21:09:55 UTC (rev 291915)
+++ extra-i686/SDL-1.2.15-ignore_insane_joystick_axis.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -1,20 +0,0 @@
-changeset: 6324:95abff7adcc2
-branch: SDL-1.2
-parent: 6306:2b923729fd01
-user: Ryan C. Gordon <icculus at icculus.org>
-date: Sun Jun 03 04:49:25 2012 -0400
-summary: Linux evdev: ignore joystick axis events if they aren't in a sane range.
-
-diff -r 2b923729fd01 -r 95abff7adcc2 src/joystick/linux/SDL_sysjoystick.c
---- a/src/joystick/linux/SDL_sysjoystick.c Sat May 12 23:32:51 2012 -0700
-+++ b/src/joystick/linux/SDL_sysjoystick.c Sun Jun 03 04:49:25 2012 -0400
-@@ -1106,6 +1106,9 @@
- }
- break;
- case EV_ABS:
-+ if (code > ABS_MISC) {
-+ break;
-+ }
- switch (code) {
- case ABS_HAT0X:
- case ABS_HAT0Y:
Copied: sdl/repos/extra-i686/SDL-1.2.15-ignore_insane_joystick_axis.patch (from rev 291915, sdl/trunk/SDL-1.2.15-ignore_insane_joystick_axis.patch)
===================================================================
--- extra-i686/SDL-1.2.15-ignore_insane_joystick_axis.patch (rev 0)
+++ extra-i686/SDL-1.2.15-ignore_insane_joystick_axis.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -0,0 +1,20 @@
+changeset: 6324:95abff7adcc2
+branch: SDL-1.2
+parent: 6306:2b923729fd01
+user: Ryan C. Gordon <icculus at icculus.org>
+date: Sun Jun 03 04:49:25 2012 -0400
+summary: Linux evdev: ignore joystick axis events if they aren't in a sane range.
+
+diff -r 2b923729fd01 -r 95abff7adcc2 src/joystick/linux/SDL_sysjoystick.c
+--- a/src/joystick/linux/SDL_sysjoystick.c Sat May 12 23:32:51 2012 -0700
++++ b/src/joystick/linux/SDL_sysjoystick.c Sun Jun 03 04:49:25 2012 -0400
+@@ -1106,6 +1106,9 @@
+ }
+ break;
+ case EV_ABS:
++ if (code > ABS_MISC) {
++ break;
++ }
+ switch (code) {
+ case ABS_HAT0X:
+ case ABS_HAT0Y:
Deleted: extra-i686/SDL-1.2.15-no-default-backing-store.patch
===================================================================
--- extra-i686/SDL-1.2.15-no-default-backing-store.patch 2017-03-30 21:09:55 UTC (rev 291915)
+++ extra-i686/SDL-1.2.15-no-default-backing-store.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -1,24 +0,0 @@
-Do not harness backing store by default
-
-xorg-server 1.15 enables backing store if composite extension is enabled
-(default settings). Harnessing backing store through compositor leads to
-tearing effect.
-
-This patch reverts default harnessing backing store to conditional use if
-SDL_VIDEO_X11_BACKINGSTORE environment variable exists.
-
-<https://bugzilla.libsdl.org/show_bug.cgi?id=2383>
-<https://bugzilla.redhat.com/show_bug.cgi?id=1073057>
-
-diff -up SDL-1.2.15/src/video/x11/SDL_x11video.c.jx SDL-1.2.15/src/video/x11/SDL_x11video.c
---- SDL-1.2.15/src/video/x11/SDL_x11video.c.jx 2012-01-19 01:30:06.000000000 -0500
-+++ SDL-1.2.15/src/video/x11/SDL_x11video.c 2014-03-04 14:39:34.691545549 -0500
-@@ -1088,7 +1088,7 @@ static int X11_CreateWindow(_THIS, SDL_S
- }
- }
-
--#if 0 /* This is an experiment - are the graphics faster now? - nope. */
-+#if 1 /* This is an experiment - are the graphics faster now? - nope. */
- if ( SDL_getenv("SDL_VIDEO_X11_BACKINGSTORE") )
- #endif
- /* Cache the window in the server, when possible */
Copied: sdl/repos/extra-i686/SDL-1.2.15-no-default-backing-store.patch (from rev 291915, sdl/trunk/SDL-1.2.15-no-default-backing-store.patch)
===================================================================
--- extra-i686/SDL-1.2.15-no-default-backing-store.patch (rev 0)
+++ extra-i686/SDL-1.2.15-no-default-backing-store.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -0,0 +1,24 @@
+Do not harness backing store by default
+
+xorg-server 1.15 enables backing store if composite extension is enabled
+(default settings). Harnessing backing store through compositor leads to
+tearing effect.
+
+This patch reverts default harnessing backing store to conditional use if
+SDL_VIDEO_X11_BACKINGSTORE environment variable exists.
+
+<https://bugzilla.libsdl.org/show_bug.cgi?id=2383>
+<https://bugzilla.redhat.com/show_bug.cgi?id=1073057>
+
+diff -up SDL-1.2.15/src/video/x11/SDL_x11video.c.jx SDL-1.2.15/src/video/x11/SDL_x11video.c
+--- SDL-1.2.15/src/video/x11/SDL_x11video.c.jx 2012-01-19 01:30:06.000000000 -0500
++++ SDL-1.2.15/src/video/x11/SDL_x11video.c 2014-03-04 14:39:34.691545549 -0500
+@@ -1088,7 +1088,7 @@ static int X11_CreateWindow(_THIS, SDL_S
+ }
+ }
+
+-#if 0 /* This is an experiment - are the graphics faster now? - nope. */
++#if 1 /* This is an experiment - are the graphics faster now? - nope. */
+ if ( SDL_getenv("SDL_VIDEO_X11_BACKINGSTORE") )
+ #endif
+ /* Cache the window in the server, when possible */
Deleted: extra-i686/SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch
===================================================================
--- extra-i686/SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch 2017-03-30 21:09:55 UTC (rev 291915)
+++ extra-i686/SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -1,44 +0,0 @@
-From 4b56fa058a45b7c804d1a5fcaf7a70db0bd0581c Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <petr.pisar at atlas.cz>
-Date: Tue, 1 Jan 2013 21:25:15 +0100
-Subject: [PATCH] x11: Bypass SetGammaRamp when changing gamma
-
-Recent Xorg has broken dynamic colors setting, so calling SDL_SetGamme()
-does not have any effect here. Recent means xorg-server >= 1.7, since 2010.
-See <https://bugs.freedesktop.org/show_bug.cgi?id=27222>.
----
- src/video/SDL_gamma.c | 15 ++-------------
- 1 files changed, 2 insertions(+), 13 deletions(-)
-
-diff --git a/src/video/SDL_gamma.c b/src/video/SDL_gamma.c
-index 4fd0370..464ab88 100644
---- a/src/video/SDL_gamma.c
-+++ b/src/video/SDL_gamma.c
-@@ -92,22 +92,11 @@ static void CalculateGammaFromRamp(float *gamma, Uint16 *ramp)
-
- int SDL_SetGamma(float red, float green, float blue)
- {
-- int succeeded;
-+ int succeeded = -1;
- SDL_VideoDevice *video = current_video;
- SDL_VideoDevice *this = current_video;
-
-- succeeded = -1;
-- /* Prefer using SetGammaRamp(), as it's more flexible */
-- {
-- Uint16 ramp[3][256];
--
-- CalculateGammaRamp(red, ramp[0]);
-- CalculateGammaRamp(green, ramp[1]);
-- CalculateGammaRamp(blue, ramp[2]);
-- succeeded = SDL_SetGammaRamp(ramp[0], ramp[1], ramp[2]);
-- }
-- if ( (succeeded < 0) && video->SetGamma ) {
-- SDL_ClearError();
-+ if ( video->SetGamma ) {
- succeeded = video->SetGamma(this, red, green, blue);
- }
- return succeeded;
---
-1.7.8.6
-
Copied: sdl/repos/extra-i686/SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch (from rev 291915, sdl/trunk/SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch)
===================================================================
--- extra-i686/SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch (rev 0)
+++ extra-i686/SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -0,0 +1,44 @@
+From 4b56fa058a45b7c804d1a5fcaf7a70db0bd0581c Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <petr.pisar at atlas.cz>
+Date: Tue, 1 Jan 2013 21:25:15 +0100
+Subject: [PATCH] x11: Bypass SetGammaRamp when changing gamma
+
+Recent Xorg has broken dynamic colors setting, so calling SDL_SetGamme()
+does not have any effect here. Recent means xorg-server >= 1.7, since 2010.
+See <https://bugs.freedesktop.org/show_bug.cgi?id=27222>.
+---
+ src/video/SDL_gamma.c | 15 ++-------------
+ 1 files changed, 2 insertions(+), 13 deletions(-)
+
+diff --git a/src/video/SDL_gamma.c b/src/video/SDL_gamma.c
+index 4fd0370..464ab88 100644
+--- a/src/video/SDL_gamma.c
++++ b/src/video/SDL_gamma.c
+@@ -92,22 +92,11 @@ static void CalculateGammaFromRamp(float *gamma, Uint16 *ramp)
+
+ int SDL_SetGamma(float red, float green, float blue)
+ {
+- int succeeded;
++ int succeeded = -1;
+ SDL_VideoDevice *video = current_video;
+ SDL_VideoDevice *this = current_video;
+
+- succeeded = -1;
+- /* Prefer using SetGammaRamp(), as it's more flexible */
+- {
+- Uint16 ramp[3][256];
+-
+- CalculateGammaRamp(red, ramp[0]);
+- CalculateGammaRamp(green, ramp[1]);
+- CalculateGammaRamp(blue, ramp[2]);
+- succeeded = SDL_SetGammaRamp(ramp[0], ramp[1], ramp[2]);
+- }
+- if ( (succeeded < 0) && video->SetGamma ) {
+- SDL_ClearError();
++ if ( video->SetGamma ) {
+ succeeded = video->SetGamma(this, red, green, blue);
+ }
+ return succeeded;
+--
+1.7.8.6
+
Deleted: extra-i686/X11_KeyToUnicode.patch
===================================================================
--- extra-i686/X11_KeyToUnicode.patch 2017-03-30 21:09:55 UTC (rev 291915)
+++ extra-i686/X11_KeyToUnicode.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -1,52 +0,0 @@
-
-# HG changeset patch
-# User Sam Lantinga <slouken at libsdl.org>
-# Date 1327258041 18000
-# Node ID 900a0fae90ca65cff55a70a17b9ec39d2ddccbcf
-# Parent 5273dfd19a5e8c5736a0d417bd441f704c5355f8
-Fixed bug 1390 - X11_KeyToUnicode
-
-manuel.montezelo 2012-01-22 08:56:18 PST
-
-We had the following bug report at Debian:
-http://bugs.debian.org/376560
-
-Same one in Ubuntu:
-https://bugs.launchpad.net/ubuntu/+source/libsdl1.2/+bug/66217
-
-We've been including a patch since then (attached) to actually export the
-symbol, since 2006. In the last release the function seems to be there, alive
-and kicking.
-
-It's affecting other people too:
-http://www.garagegames.com/community/forums/viewthread/52287
-
-diff -r 5273dfd19a5e -r 900a0fae90ca src/video/x11/SDL_x11events.c
---- a/src/video/x11/SDL_x11events.c Sat Jan 21 12:06:51 2012 -0500
-+++ b/src/video/x11/SDL_x11events.c Sun Jan 22 13:47:21 2012 -0500
-@@ -1246,8 +1246,11 @@
- * sequences (dead accents, compose key sequences) will not work since the
- * state has been irrevocably lost.
- */
-+extern DECLSPEC Uint16 SDLCALL X11_KeyToUnicode(SDLKey, SDLMod);
-+
- Uint16 X11_KeyToUnicode(SDLKey keysym, SDLMod modifiers)
- {
-+ static int warning = 0;
- struct SDL_VideoDevice *this = current_video;
- char keybuf[32];
- int i;
-@@ -1255,6 +1258,12 @@
- XKeyEvent xkey;
- Uint16 unicode;
-
-+ if ( warning ) {
-+ warning = 0;
-+ fprintf(stderr, "WARNING: Application is using X11_KeyToUnicode().\n");
-+ fprintf(stderr, "This is not an official SDL function, please report this as a bug.\n");
-+ }
-+
- if ( !this || !SDL_Display ) {
- return 0;
- }
-
Copied: sdl/repos/extra-i686/X11_KeyToUnicode.patch (from rev 291915, sdl/trunk/X11_KeyToUnicode.patch)
===================================================================
--- extra-i686/X11_KeyToUnicode.patch (rev 0)
+++ extra-i686/X11_KeyToUnicode.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -0,0 +1,52 @@
+
+# HG changeset patch
+# User Sam Lantinga <slouken at libsdl.org>
+# Date 1327258041 18000
+# Node ID 900a0fae90ca65cff55a70a17b9ec39d2ddccbcf
+# Parent 5273dfd19a5e8c5736a0d417bd441f704c5355f8
+Fixed bug 1390 - X11_KeyToUnicode
+
+manuel.montezelo 2012-01-22 08:56:18 PST
+
+We had the following bug report at Debian:
+http://bugs.debian.org/376560
+
+Same one in Ubuntu:
+https://bugs.launchpad.net/ubuntu/+source/libsdl1.2/+bug/66217
+
+We've been including a patch since then (attached) to actually export the
+symbol, since 2006. In the last release the function seems to be there, alive
+and kicking.
+
+It's affecting other people too:
+http://www.garagegames.com/community/forums/viewthread/52287
+
+diff -r 5273dfd19a5e -r 900a0fae90ca src/video/x11/SDL_x11events.c
+--- a/src/video/x11/SDL_x11events.c Sat Jan 21 12:06:51 2012 -0500
++++ b/src/video/x11/SDL_x11events.c Sun Jan 22 13:47:21 2012 -0500
+@@ -1246,8 +1246,11 @@
+ * sequences (dead accents, compose key sequences) will not work since the
+ * state has been irrevocably lost.
+ */
++extern DECLSPEC Uint16 SDLCALL X11_KeyToUnicode(SDLKey, SDLMod);
++
+ Uint16 X11_KeyToUnicode(SDLKey keysym, SDLMod modifiers)
+ {
++ static int warning = 0;
+ struct SDL_VideoDevice *this = current_video;
+ char keybuf[32];
+ int i;
+@@ -1255,6 +1258,12 @@
+ XKeyEvent xkey;
+ Uint16 unicode;
+
++ if ( warning ) {
++ warning = 0;
++ fprintf(stderr, "WARNING: Application is using X11_KeyToUnicode().\n");
++ fprintf(stderr, "This is not an official SDL function, please report this as a bug.\n");
++ }
++
+ if ( !this || !SDL_Display ) {
+ return 0;
+ }
+
Deleted: extra-i686/libsdl-1.2.15-resizing.patch
===================================================================
--- extra-i686/libsdl-1.2.15-resizing.patch 2017-03-30 21:09:55 UTC (rev 291915)
+++ extra-i686/libsdl-1.2.15-resizing.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -1,63 +0,0 @@
-Description: Revert change that breaks window corner resizing
- http://bugzilla.libsdl.org/show_bug.cgi?id=1430
-Author: Andrew Caudwell <acaudwell at gmail.com>
-Last-Update: 2012-04-10
-Bug-Debian: http://bugs.debian.org/665779
-
-diff -r c787fb1b5699 src/video/x11/SDL_x11events.c
---- a/src/video/x11/SDL_x11events.c Mon Feb 20 23:51:08 2012 -0500
-+++ b/src/video/x11/SDL_x11events.c Mon Mar 26 12:26:52 2012 +1300
-@@ -57,12 +57,6 @@
- static SDLKey MISC_keymap[256];
- SDLKey X11_TranslateKeycode(Display *display, KeyCode kc);
-
--/*
-- Pending resize target for ConfigureNotify (so outdated events don't
-- cause inappropriate resize events)
--*/
--int X11_PendingConfigureNotifyWidth = -1;
--int X11_PendingConfigureNotifyHeight = -1;
-
- #ifdef X_HAVE_UTF8_STRING
- Uint32 Utf8ToUcs4(const Uint8 *utf8)
-@@ -825,16 +819,6 @@
- #ifdef DEBUG_XEVENTS
- printf("ConfigureNotify! (resize: %dx%d)\n", xevent.xconfigure.width, xevent.xconfigure.height);
- #endif
-- if ((X11_PendingConfigureNotifyWidth != -1) &&
-- (X11_PendingConfigureNotifyHeight != -1)) {
-- if ((xevent.xconfigure.width != X11_PendingConfigureNotifyWidth) &&
-- (xevent.xconfigure.height != X11_PendingConfigureNotifyHeight)) {
-- /* Event is from before the resize, so ignore. */
-- break;
-- }
-- X11_PendingConfigureNotifyWidth = -1;
-- X11_PendingConfigureNotifyHeight = -1;
-- }
- if ( SDL_VideoSurface ) {
- if ((xevent.xconfigure.width != SDL_VideoSurface->w) ||
- (xevent.xconfigure.height != SDL_VideoSurface->h)) {
-diff -r c787fb1b5699 src/video/x11/SDL_x11events_c.h
---- a/src/video/x11/SDL_x11events_c.h Mon Feb 20 23:51:08 2012 -0500
-+++ b/src/video/x11/SDL_x11events_c.h Mon Mar 26 12:26:52 2012 +1300
-@@ -27,8 +27,3 @@
- extern void X11_InitOSKeymap(_THIS);
- extern void X11_PumpEvents(_THIS);
- extern void X11_SetKeyboardState(Display *display, const char *key_vec);
--
--/* Variables to be exported */
--extern int X11_PendingConfigureNotifyWidth;
--extern int X11_PendingConfigureNotifyHeight;
--
-diff -r c787fb1b5699 src/video/x11/SDL_x11video.c
---- a/src/video/x11/SDL_x11video.c Mon Feb 20 23:51:08 2012 -0500
-+++ b/src/video/x11/SDL_x11video.c Mon Mar 26 12:26:52 2012 +1300
-@@ -1182,8 +1182,6 @@
- current = NULL;
- goto done;
- }
-- X11_PendingConfigureNotifyWidth = width;
-- X11_PendingConfigureNotifyHeight = height;
- } else {
- if (X11_CreateWindow(this,current,width,height,bpp,flags) < 0) {
- current = NULL;
Copied: sdl/repos/extra-i686/libsdl-1.2.15-resizing.patch (from rev 291915, sdl/trunk/libsdl-1.2.15-resizing.patch)
===================================================================
--- extra-i686/libsdl-1.2.15-resizing.patch (rev 0)
+++ extra-i686/libsdl-1.2.15-resizing.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -0,0 +1,63 @@
+Description: Revert change that breaks window corner resizing
+ http://bugzilla.libsdl.org/show_bug.cgi?id=1430
+Author: Andrew Caudwell <acaudwell at gmail.com>
+Last-Update: 2012-04-10
+Bug-Debian: http://bugs.debian.org/665779
+
+diff -r c787fb1b5699 src/video/x11/SDL_x11events.c
+--- a/src/video/x11/SDL_x11events.c Mon Feb 20 23:51:08 2012 -0500
++++ b/src/video/x11/SDL_x11events.c Mon Mar 26 12:26:52 2012 +1300
+@@ -57,12 +57,6 @@
+ static SDLKey MISC_keymap[256];
+ SDLKey X11_TranslateKeycode(Display *display, KeyCode kc);
+
+-/*
+- Pending resize target for ConfigureNotify (so outdated events don't
+- cause inappropriate resize events)
+-*/
+-int X11_PendingConfigureNotifyWidth = -1;
+-int X11_PendingConfigureNotifyHeight = -1;
+
+ #ifdef X_HAVE_UTF8_STRING
+ Uint32 Utf8ToUcs4(const Uint8 *utf8)
+@@ -825,16 +819,6 @@
+ #ifdef DEBUG_XEVENTS
+ printf("ConfigureNotify! (resize: %dx%d)\n", xevent.xconfigure.width, xevent.xconfigure.height);
+ #endif
+- if ((X11_PendingConfigureNotifyWidth != -1) &&
+- (X11_PendingConfigureNotifyHeight != -1)) {
+- if ((xevent.xconfigure.width != X11_PendingConfigureNotifyWidth) &&
+- (xevent.xconfigure.height != X11_PendingConfigureNotifyHeight)) {
+- /* Event is from before the resize, so ignore. */
+- break;
+- }
+- X11_PendingConfigureNotifyWidth = -1;
+- X11_PendingConfigureNotifyHeight = -1;
+- }
+ if ( SDL_VideoSurface ) {
+ if ((xevent.xconfigure.width != SDL_VideoSurface->w) ||
+ (xevent.xconfigure.height != SDL_VideoSurface->h)) {
+diff -r c787fb1b5699 src/video/x11/SDL_x11events_c.h
+--- a/src/video/x11/SDL_x11events_c.h Mon Feb 20 23:51:08 2012 -0500
++++ b/src/video/x11/SDL_x11events_c.h Mon Mar 26 12:26:52 2012 +1300
+@@ -27,8 +27,3 @@
+ extern void X11_InitOSKeymap(_THIS);
+ extern void X11_PumpEvents(_THIS);
+ extern void X11_SetKeyboardState(Display *display, const char *key_vec);
+-
+-/* Variables to be exported */
+-extern int X11_PendingConfigureNotifyWidth;
+-extern int X11_PendingConfigureNotifyHeight;
+-
+diff -r c787fb1b5699 src/video/x11/SDL_x11video.c
+--- a/src/video/x11/SDL_x11video.c Mon Feb 20 23:51:08 2012 -0500
++++ b/src/video/x11/SDL_x11video.c Mon Mar 26 12:26:52 2012 +1300
+@@ -1182,8 +1182,6 @@
+ current = NULL;
+ goto done;
+ }
+- X11_PendingConfigureNotifyWidth = width;
+- X11_PendingConfigureNotifyHeight = height;
+ } else {
+ if (X11_CreateWindow(this,current,width,height,bpp,flags) < 0) {
+ current = NULL;
Deleted: extra-i686/sdl-1.2.14-disable-mmx.patch
===================================================================
--- extra-i686/sdl-1.2.14-disable-mmx.patch 2017-03-30 21:09:55 UTC (rev 291915)
+++ extra-i686/sdl-1.2.14-disable-mmx.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -1,13 +0,0 @@
-# and another one from FS#26020
-
---- a/src/video/SDL_yuv_sw.c 2009-10-13 06:07:15.000000000 +0700
-+++ b/src/video/SDL_yuv_sw.c 2011-09-20 19:26:30.247742620 +0700
-@@ -89,6 +89,8 @@
- #include "SDL_yuvfuncs.h"
- #include "SDL_yuv_sw_c.h"
-
-+#undef __OPTIMIZE__
-+
- /* The functions used to manipulate software video overlays */
- static struct private_yuvhwfuncs sw_yuvfuncs = {
- SDL_LockYUV_SW,
Copied: sdl/repos/extra-i686/sdl-1.2.14-disable-mmx.patch (from rev 291915, sdl/trunk/sdl-1.2.14-disable-mmx.patch)
===================================================================
--- extra-i686/sdl-1.2.14-disable-mmx.patch (rev 0)
+++ extra-i686/sdl-1.2.14-disable-mmx.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -0,0 +1,13 @@
+# and another one from FS#26020
+
+--- a/src/video/SDL_yuv_sw.c 2009-10-13 06:07:15.000000000 +0700
++++ b/src/video/SDL_yuv_sw.c 2011-09-20 19:26:30.247742620 +0700
+@@ -89,6 +89,8 @@
+ #include "SDL_yuvfuncs.h"
+ #include "SDL_yuv_sw_c.h"
+
++#undef __OPTIMIZE__
++
+ /* The functions used to manipulate software video overlays */
+ static struct private_yuvhwfuncs sw_yuvfuncs = {
+ SDL_LockYUV_SW,
Deleted: extra-i686/sdl-1.2.14-fix-mouse-clicking.patch
===================================================================
--- extra-i686/sdl-1.2.14-fix-mouse-clicking.patch 2017-03-30 21:09:55 UTC (rev 291915)
+++ extra-i686/sdl-1.2.14-fix-mouse-clicking.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -1,23 +0,0 @@
---- SDL-1.2.14/src/video/x11/SDL_x11events.c.orig 2010-04-08 11:57:05.003169834 -0700
-+++ SDL-1.2.14/src/video/x11/SDL_x11events.c 2010-04-08 12:33:51.690926340 -0700
-@@ -423,12 +423,15 @@
- if ( xevent.xcrossing.mode == NotifyUngrab )
- printf("Mode: NotifyUngrab\n");
- #endif
-- if ( this->input_grab == SDL_GRAB_OFF ) {
-- posted = SDL_PrivateAppActive(1, SDL_APPMOUSEFOCUS);
-+ if ( (xevent.xcrossing.mode != NotifyGrab) &&
-+ (xevent.xcrossing.mode != NotifyUngrab) ) {
-+ if ( this->input_grab == SDL_GRAB_OFF ) {
-+ posted = SDL_PrivateAppActive(1, SDL_APPMOUSEFOCUS);
-+ }
-+ posted = SDL_PrivateMouseMotion(0, 0,
-+ xevent.xcrossing.x,
-+ xevent.xcrossing.y);
- }
-- posted = SDL_PrivateMouseMotion(0, 0,
-- xevent.xcrossing.x,
-- xevent.xcrossing.y);
- }
- break;
-
Copied: sdl/repos/extra-i686/sdl-1.2.14-fix-mouse-clicking.patch (from rev 291915, sdl/trunk/sdl-1.2.14-fix-mouse-clicking.patch)
===================================================================
--- extra-i686/sdl-1.2.14-fix-mouse-clicking.patch (rev 0)
+++ extra-i686/sdl-1.2.14-fix-mouse-clicking.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -0,0 +1,23 @@
+--- SDL-1.2.14/src/video/x11/SDL_x11events.c.orig 2010-04-08 11:57:05.003169834 -0700
++++ SDL-1.2.14/src/video/x11/SDL_x11events.c 2010-04-08 12:33:51.690926340 -0700
+@@ -423,12 +423,15 @@
+ if ( xevent.xcrossing.mode == NotifyUngrab )
+ printf("Mode: NotifyUngrab\n");
+ #endif
+- if ( this->input_grab == SDL_GRAB_OFF ) {
+- posted = SDL_PrivateAppActive(1, SDL_APPMOUSEFOCUS);
++ if ( (xevent.xcrossing.mode != NotifyGrab) &&
++ (xevent.xcrossing.mode != NotifyUngrab) ) {
++ if ( this->input_grab == SDL_GRAB_OFF ) {
++ posted = SDL_PrivateAppActive(1, SDL_APPMOUSEFOCUS);
++ }
++ posted = SDL_PrivateMouseMotion(0, 0,
++ xevent.xcrossing.x,
++ xevent.xcrossing.y);
+ }
+- posted = SDL_PrivateMouseMotion(0, 0,
+- xevent.xcrossing.x,
+- xevent.xcrossing.y);
+ }
+ break;
+
Deleted: extra-x86_64/PKGBUILD
===================================================================
--- extra-x86_64/PKGBUILD 2017-03-30 21:09:55 UTC (rev 291915)
+++ extra-x86_64/PKGBUILD 2017-03-30 21:11:51 UTC (rev 291916)
@@ -1,68 +0,0 @@
-# $Id$
-# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens at gmail.com>
-# Contributor: Allan McRae <allan at archlinux.org>
-# Contributor: dorphell <dorphell at archlinux.org>
-
-pkgname=sdl
-pkgver=1.2.15
-pkgrel=7
-pkgdesc="A library for portable low-level access to a video framebuffer, audio output, mouse, and keyboard"
-arch=('i686' 'x86_64')
-url="http://www.libsdl.org"
-license=('LGPL')
-depends=('glibc' 'libxext' 'libxrender' 'libx11')
-makedepends=('alsa-lib' 'mesa' 'libpulse' 'glu')
-optdepends=('alsa-lib: ALSA audio driver'
- 'libpulse: PulseAudio audio driver')
-options=('staticlibs')
-source=(http://www.libsdl.org/release/SDL-${pkgver}.tar.gz
- SDL-1.2.10-GrabNotViewable.patch
- SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch
- SDL-1.2.15-const_XData32.patch
- SDL-1.2.15-ignore_insane_joystick_axis.patch
- SDL-1.2.15-no-default-backing-store.patch
- SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch
- sdl-1.2.14-fix-mouse-clicking.patch
- sdl-1.2.14-disable-mmx.patch
- libsdl-1.2.15-resizing.patch
- X11_KeyToUnicode.patch)
-md5sums=('9d96df8417572a2afb781a7c4c811a85'
- '37ad001a4d2ff924a5fab356b49f8a78'
- '8d5a61a0adf1a302695a30141f402712'
- 'd6a1bfa054507f281338626e5f12d74b'
- 'e382e5b7449e95969c5ba4084b0aab39'
- '1b0578c76453813eb4eaf0125ce242db'
- '321377e38e2db7f1baf43c392e165dd5'
- '04d8c179f125e04bcd4c9d60e013c2d7'
- 'e5c16b7611f62c7cb25f0534eff68852'
- '3dd50347d8856160a9cbd7f80383a1f8'
- 'edea272dff4698470877c016d818918d')
-
-prepare() {
- cd SDL-$pkgver
- patch -Np1 -i ../SDL-1.2.10-GrabNotViewable.patch
- patch -Np1 -i ../SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch
- patch -Np1 -i ../SDL-1.2.15-const_XData32.patch
- patch -Np1 -i ../SDL-1.2.15-ignore_insane_joystick_axis.patch
- patch -Np1 -i ../SDL-1.2.15-no-default-backing-store.patch
-
- # https://bugs.freedesktop.org/show_bug.cgi?id=27222
- patch -Np1 -i ../SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch
-
- patch -Np1 -i ../sdl-1.2.14-fix-mouse-clicking.patch
- patch -Np1 -i ../sdl-1.2.14-disable-mmx.patch
- patch -Np1 -i ../libsdl-1.2.15-resizing.patch
- patch -Np1 -i ../X11_KeyToUnicode.patch
-}
-
-build() {
- cd SDL-$pkgver
- ./configure --prefix=/usr --disable-nasm --enable-alsa \
- --with-x --disable-rpath --disable-static
- make
-}
-
-package() {
- cd SDL-$pkgver
- make DESTDIR="$pkgdir" install
-}
Copied: sdl/repos/extra-x86_64/PKGBUILD (from rev 291915, sdl/trunk/PKGBUILD)
===================================================================
--- extra-x86_64/PKGBUILD (rev 0)
+++ extra-x86_64/PKGBUILD 2017-03-30 21:11:51 UTC (rev 291916)
@@ -0,0 +1,68 @@
+# $Id$
+# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens at gmail.com>
+# Contributor: Allan McRae <allan at archlinux.org>
+# Contributor: dorphell <dorphell at archlinux.org>
+
+pkgname=sdl
+pkgver=1.2.15
+pkgrel=8
+pkgdesc="A library for portable low-level access to a video framebuffer, audio output, mouse, and keyboard"
+arch=('i686' 'x86_64')
+url="https://www.libsdl.org"
+license=('LGPL')
+depends=('glibc' 'libxext' 'libxrender' 'libx11')
+makedepends=('alsa-lib' 'mesa' 'libpulse' 'glu')
+optdepends=('alsa-lib: ALSA audio driver'
+ 'libpulse: PulseAudio audio driver')
+options=('staticlibs')
+source=(https://www.libsdl.org/release/SDL-${pkgver}.tar.gz
+ SDL-1.2.10-GrabNotViewable.patch
+ SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch
+ SDL-1.2.15-const_XData32.patch
+ SDL-1.2.15-ignore_insane_joystick_axis.patch
+ SDL-1.2.15-no-default-backing-store.patch
+ SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch
+ sdl-1.2.14-fix-mouse-clicking.patch
+ sdl-1.2.14-disable-mmx.patch
+ libsdl-1.2.15-resizing.patch
+ X11_KeyToUnicode.patch)
+sha256sums=('d6d316a793e5e348155f0dd93b979798933fb98aa1edebcc108829d6474aad00'
+ 'ea2042b8a45a083b1447d5c56e52b23b79f2ddb0d717ec7b287b34ef71bd2d1a'
+ '292046466d52a2ebe995a0121404864e4ee0de2b6024203acb95bbd600844da0'
+ 'bab60b515a74b71650ee71d5a0075c77046a7bad48b061673c3798dbdd35446d'
+ '7586d6124d5452ad721ca6aa10eae09946d94854748e22f9c9c6fdca3d0aeb12'
+ '3941c44a5580df95c6868936cfc57ba3e7b6952fb8a3eb14f963d54d9d8ca8a4'
+ 'd296af5bb0d9856d049b4e5adb9dd995d2a1e51d76a6adf63457e65101a50620'
+ '8d178f13eb707e81f5f9d86bf7b609ae8f0bac937fb4a37ebcbf4bbc9b89e21b'
+ '17bb880dd2cb4922d4e3771d146660b9da8be8f1629a5cdaae7523d4a9d2bd7c'
+ '5160fb1c07b04480d98d45b89a0aa6e577f2ac4c3bace0c80b251e6aca1fb4a1'
+ 'b1ad9c60829b166e6b647006d6549ea657155e755cf574fcfc4b91b658654769')
+
+prepare() {
+ cd SDL-$pkgver
+ patch -Np1 -i ../SDL-1.2.10-GrabNotViewable.patch
+ patch -Np1 -i ../SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch
+ patch -Np1 -i ../SDL-1.2.15-const_XData32.patch
+ patch -Np1 -i ../SDL-1.2.15-ignore_insane_joystick_axis.patch
+ patch -Np1 -i ../SDL-1.2.15-no-default-backing-store.patch
+
+ # https://bugs.freedesktop.org/show_bug.cgi?id=27222
+ patch -Np1 -i ../SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch
+
+ patch -Np1 -i ../sdl-1.2.14-fix-mouse-clicking.patch
+ patch -Np1 -i ../sdl-1.2.14-disable-mmx.patch
+ patch -Np1 -i ../libsdl-1.2.15-resizing.patch
+ patch -Np1 -i ../X11_KeyToUnicode.patch
+}
+
+build() {
+ cd SDL-$pkgver
+ ./configure --prefix=/usr --disable-nasm --enable-alsa \
+ --with-x --disable-rpath --disable-static
+ make
+}
+
+package() {
+ cd SDL-$pkgver
+ make DESTDIR="$pkgdir" install
+}
Deleted: extra-x86_64/SDL-1.2.10-GrabNotViewable.patch
===================================================================
--- extra-x86_64/SDL-1.2.10-GrabNotViewable.patch 2017-03-30 21:09:55 UTC (rev 291915)
+++ extra-x86_64/SDL-1.2.10-GrabNotViewable.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -1,22 +0,0 @@
-Makes SDL-1.2 SDL_WM_GrabInput() non-blocking in case of SDL window is not
-viewable. Patch provided by <pbonzini at redhat.com>.
-See <http://bugzilla.libsdl.org/show_bug.cgi?id=1155>.
-
---- ./src/video/x11/SDL_x11wm.c 2007-12-31 04:48:13.000000000 +0000
-+++ ./src/video/x11/SDL_x11wm.c 2009-01-15 10:27:14.000000000 +0000
-@@ -351,13 +351,14 @@ SDL_GrabMode X11_GrabInputNoLock(_THIS,
- result = XGrabPointer(SDL_Display, SDL_Window, True, 0,
- GrabModeAsync, GrabModeAsync,
- SDL_Window, None, CurrentTime);
-- if ( result == GrabSuccess ) {
-+ if ( result == GrabSuccess || result == GrabNotViewable ) {
- break;
- }
- SDL_Delay(100);
- }
- if ( result != GrabSuccess ) {
- /* Uh, oh, what do we do here? */ ;
-+ return(SDL_GRAB_OFF);
- }
- /* Now grab the keyboard */
- XGrabKeyboard(SDL_Display, WMwindow, True,
Copied: sdl/repos/extra-x86_64/SDL-1.2.10-GrabNotViewable.patch (from rev 291915, sdl/trunk/SDL-1.2.10-GrabNotViewable.patch)
===================================================================
--- extra-x86_64/SDL-1.2.10-GrabNotViewable.patch (rev 0)
+++ extra-x86_64/SDL-1.2.10-GrabNotViewable.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -0,0 +1,22 @@
+Makes SDL-1.2 SDL_WM_GrabInput() non-blocking in case of SDL window is not
+viewable. Patch provided by <pbonzini at redhat.com>.
+See <http://bugzilla.libsdl.org/show_bug.cgi?id=1155>.
+
+--- ./src/video/x11/SDL_x11wm.c 2007-12-31 04:48:13.000000000 +0000
++++ ./src/video/x11/SDL_x11wm.c 2009-01-15 10:27:14.000000000 +0000
+@@ -351,13 +351,14 @@ SDL_GrabMode X11_GrabInputNoLock(_THIS,
+ result = XGrabPointer(SDL_Display, SDL_Window, True, 0,
+ GrabModeAsync, GrabModeAsync,
+ SDL_Window, None, CurrentTime);
+- if ( result == GrabSuccess ) {
++ if ( result == GrabSuccess || result == GrabNotViewable ) {
+ break;
+ }
+ SDL_Delay(100);
+ }
+ if ( result != GrabSuccess ) {
+ /* Uh, oh, what do we do here? */ ;
++ return(SDL_GRAB_OFF);
+ }
+ /* Now grab the keyboard */
+ XGrabKeyboard(SDL_Display, WMwindow, True,
Deleted: extra-x86_64/SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch
===================================================================
--- extra-x86_64/SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch 2017-03-30 21:09:55 UTC (rev 291915)
+++ extra-x86_64/SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -1,73 +0,0 @@
-# HG changeset patch
-# User Sam Lantinga <slouken at libsdl.org>
-# Date 1397799374 25200
-# Thu Apr 17 22:36:14 2014 -0700
-# Branch SDL-1.2
-# Node ID 0aade9c0203f717fe4b823a176c3c040f1a709f8
-# Parent 22a7f096bb9d4d596f35a93e33608825693462b0
-Fixed bug 2325 - SDL_EnableUNICODE sometimes drops keyboard events completely
-
-Rafał Mużyło
-
-The most annoying part of this bug is that though I've found it in two separate apps, I don't have a trivial testcase for it.
-
-The problem seems to be a condition race, as it's triggered quite randomly (therefore it will be hard to tell whether it really gets fixed, if a probable fix is found).
-
-While it's specific to SDL 1.2, it seems quite similar to the problem described and fixed in http://forums.libsdl.org/viewtopic.php?p=40503.
-
-Now, I should start describing the problem.
-
-A game uses Escape to open menu (the exact key might not be important). Upon opening, it calls SDL_EnableUNICODE(1). Upon closing it calls SDL_EnableUNICODE(0).
-
-I have an IME running.
-
-Game uses SDL_PollEvent to get the events.
-
-If Escape is pressed repeatedly, menu is opened and closed, till it eventually freezes in open state.
-"freezes" in this context means "app itself still runs, but no keyboard events are getting delivered (though - for example - mouse events still are)". "getting delivered" should mean "SDL_PollEvent is not receiving any".
-If it matters, the last delivered keyboard event is a keypress, the release never arrives.
-
-It seems (no guarantees, due to random nature of the freeze) that unsetting XMODIFIERS (which - AFAIU - will disable IME as far as SDL is concerned) prevents the freeze, therefore the reference to that SDL2 thread.
-
-diff -r 22a7f096bb9d -r 0aade9c0203f src/video/x11/SDL_x11events.c
---- a/src/video/x11/SDL_x11events.c Sun Dec 01 00:00:17 2013 -0500
-+++ b/src/video/x11/SDL_x11events.c Thu Apr 17 22:36:14 2014 -0700
-@@ -395,6 +395,8 @@
- {
- int posted;
- XEvent xevent;
-+ int orig_event_type;
-+ KeyCode orig_keycode;
-
- SDL_memset(&xevent, '\0', sizeof (XEvent)); /* valgrind fix. --ryan. */
- XNextEvent(SDL_Display, &xevent);
-@@ -410,9 +412,29 @@
- #ifdef X_HAVE_UTF8_STRING
- /* If we are translating with IM, we need to pass all events
- to XFilterEvent, and discard those filtered events immediately. */
-+ orig_event_type = xevent.type;
-+ if (orig_event_type == KeyPress || orig_event_type == KeyRelease) {
-+ orig_keycode = xevent.xkey.keycode;
-+ } else {
-+ orig_keycode = 0;
-+ }
- if ( SDL_TranslateUNICODE
- && SDL_IM != NULL
- && XFilterEvent(&xevent, None) ) {
-+ if (orig_keycode) {
-+ SDL_keysym keysym;
-+ static XComposeStatus state;
-+ char keybuf[32];
-+
-+ keysym.scancode = xevent.xkey.keycode;
-+ keysym.sym = X11_TranslateKeycode(SDL_Display, xevent.xkey.keycode);
-+ keysym.mod = KMOD_NONE;
-+ keysym.unicode = 0;
-+ if (orig_event_type == KeyPress && XLookupString(&xevent.xkey, keybuf, sizeof(keybuf), NULL, &state))
-+ keysym.unicode = (Uint8)keybuf[0];
-+
-+ SDL_PrivateKeyboard(orig_event_type == KeyPress ? SDL_PRESSED : SDL_RELEASED, &keysym);
-+ }
- return 0;
- }
- #endif
Copied: sdl/repos/extra-x86_64/SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch (from rev 291915, sdl/trunk/SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch)
===================================================================
--- extra-x86_64/SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch (rev 0)
+++ extra-x86_64/SDL-1.2.15-SDL_EnableUNICODE_drops_keyboard_events.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -0,0 +1,73 @@
+# HG changeset patch
+# User Sam Lantinga <slouken at libsdl.org>
+# Date 1397799374 25200
+# Thu Apr 17 22:36:14 2014 -0700
+# Branch SDL-1.2
+# Node ID 0aade9c0203f717fe4b823a176c3c040f1a709f8
+# Parent 22a7f096bb9d4d596f35a93e33608825693462b0
+Fixed bug 2325 - SDL_EnableUNICODE sometimes drops keyboard events completely
+
+Rafał Mużyło
+
+The most annoying part of this bug is that though I've found it in two separate apps, I don't have a trivial testcase for it.
+
+The problem seems to be a condition race, as it's triggered quite randomly (therefore it will be hard to tell whether it really gets fixed, if a probable fix is found).
+
+While it's specific to SDL 1.2, it seems quite similar to the problem described and fixed in http://forums.libsdl.org/viewtopic.php?p=40503.
+
+Now, I should start describing the problem.
+
+A game uses Escape to open menu (the exact key might not be important). Upon opening, it calls SDL_EnableUNICODE(1). Upon closing it calls SDL_EnableUNICODE(0).
+
+I have an IME running.
+
+Game uses SDL_PollEvent to get the events.
+
+If Escape is pressed repeatedly, menu is opened and closed, till it eventually freezes in open state.
+"freezes" in this context means "app itself still runs, but no keyboard events are getting delivered (though - for example - mouse events still are)". "getting delivered" should mean "SDL_PollEvent is not receiving any".
+If it matters, the last delivered keyboard event is a keypress, the release never arrives.
+
+It seems (no guarantees, due to random nature of the freeze) that unsetting XMODIFIERS (which - AFAIU - will disable IME as far as SDL is concerned) prevents the freeze, therefore the reference to that SDL2 thread.
+
+diff -r 22a7f096bb9d -r 0aade9c0203f src/video/x11/SDL_x11events.c
+--- a/src/video/x11/SDL_x11events.c Sun Dec 01 00:00:17 2013 -0500
++++ b/src/video/x11/SDL_x11events.c Thu Apr 17 22:36:14 2014 -0700
+@@ -395,6 +395,8 @@
+ {
+ int posted;
+ XEvent xevent;
++ int orig_event_type;
++ KeyCode orig_keycode;
+
+ SDL_memset(&xevent, '\0', sizeof (XEvent)); /* valgrind fix. --ryan. */
+ XNextEvent(SDL_Display, &xevent);
+@@ -410,9 +412,29 @@
+ #ifdef X_HAVE_UTF8_STRING
+ /* If we are translating with IM, we need to pass all events
+ to XFilterEvent, and discard those filtered events immediately. */
++ orig_event_type = xevent.type;
++ if (orig_event_type == KeyPress || orig_event_type == KeyRelease) {
++ orig_keycode = xevent.xkey.keycode;
++ } else {
++ orig_keycode = 0;
++ }
+ if ( SDL_TranslateUNICODE
+ && SDL_IM != NULL
+ && XFilterEvent(&xevent, None) ) {
++ if (orig_keycode) {
++ SDL_keysym keysym;
++ static XComposeStatus state;
++ char keybuf[32];
++
++ keysym.scancode = xevent.xkey.keycode;
++ keysym.sym = X11_TranslateKeycode(SDL_Display, xevent.xkey.keycode);
++ keysym.mod = KMOD_NONE;
++ keysym.unicode = 0;
++ if (orig_event_type == KeyPress && XLookupString(&xevent.xkey, keybuf, sizeof(keybuf), NULL, &state))
++ keysym.unicode = (Uint8)keybuf[0];
++
++ SDL_PrivateKeyboard(orig_event_type == KeyPress ? SDL_PRESSED : SDL_RELEASED, &keysym);
++ }
+ return 0;
+ }
+ #endif
Deleted: extra-x86_64/SDL-1.2.15-const_XData32.patch
===================================================================
--- extra-x86_64/SDL-1.2.15-const_XData32.patch 2017-03-30 21:09:55 UTC (rev 291915)
+++ extra-x86_64/SDL-1.2.15-const_XData32.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -1,16 +0,0 @@
-libX11-1.5.99.901 has changed prototype of _XData32
-
-<http://bugzilla.libsdl.org/show_bug.cgi?id=1769>
-
-diff -r b6b2829cd7ef src/video/x11/SDL_x11sym.h
---- a/src/video/x11/SDL_x11sym.h Wed Feb 27 15:20:31 2013 -0800
-+++ b/src/video/x11/SDL_x11sym.h Wed Mar 27 16:07:23 2013 +0100
-@@ -165,7 +165,7 @@
- */
- #ifdef LONG64
- SDL_X11_MODULE(IO_32BIT)
--SDL_X11_SYM(int,_XData32,(Display *dpy,register long *data,unsigned len),(dpy,data,len),return)
-+SDL_X11_SYM(int,_XData32,(Display *dpy,register _Xconst long *data,unsigned len),(dpy,data,len),return)
- SDL_X11_SYM(void,_XRead32,(Display *dpy,register long *data,long len),(dpy,data,len),)
- #endif
-
Copied: sdl/repos/extra-x86_64/SDL-1.2.15-const_XData32.patch (from rev 291915, sdl/trunk/SDL-1.2.15-const_XData32.patch)
===================================================================
--- extra-x86_64/SDL-1.2.15-const_XData32.patch (rev 0)
+++ extra-x86_64/SDL-1.2.15-const_XData32.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -0,0 +1,16 @@
+libX11-1.5.99.901 has changed prototype of _XData32
+
+<http://bugzilla.libsdl.org/show_bug.cgi?id=1769>
+
+diff -r b6b2829cd7ef src/video/x11/SDL_x11sym.h
+--- a/src/video/x11/SDL_x11sym.h Wed Feb 27 15:20:31 2013 -0800
++++ b/src/video/x11/SDL_x11sym.h Wed Mar 27 16:07:23 2013 +0100
+@@ -165,7 +165,7 @@
+ */
+ #ifdef LONG64
+ SDL_X11_MODULE(IO_32BIT)
+-SDL_X11_SYM(int,_XData32,(Display *dpy,register long *data,unsigned len),(dpy,data,len),return)
++SDL_X11_SYM(int,_XData32,(Display *dpy,register _Xconst long *data,unsigned len),(dpy,data,len),return)
+ SDL_X11_SYM(void,_XRead32,(Display *dpy,register long *data,long len),(dpy,data,len),)
+ #endif
+
Deleted: extra-x86_64/SDL-1.2.15-ignore_insane_joystick_axis.patch
===================================================================
--- extra-x86_64/SDL-1.2.15-ignore_insane_joystick_axis.patch 2017-03-30 21:09:55 UTC (rev 291915)
+++ extra-x86_64/SDL-1.2.15-ignore_insane_joystick_axis.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -1,20 +0,0 @@
-changeset: 6324:95abff7adcc2
-branch: SDL-1.2
-parent: 6306:2b923729fd01
-user: Ryan C. Gordon <icculus at icculus.org>
-date: Sun Jun 03 04:49:25 2012 -0400
-summary: Linux evdev: ignore joystick axis events if they aren't in a sane range.
-
-diff -r 2b923729fd01 -r 95abff7adcc2 src/joystick/linux/SDL_sysjoystick.c
---- a/src/joystick/linux/SDL_sysjoystick.c Sat May 12 23:32:51 2012 -0700
-+++ b/src/joystick/linux/SDL_sysjoystick.c Sun Jun 03 04:49:25 2012 -0400
-@@ -1106,6 +1106,9 @@
- }
- break;
- case EV_ABS:
-+ if (code > ABS_MISC) {
-+ break;
-+ }
- switch (code) {
- case ABS_HAT0X:
- case ABS_HAT0Y:
Copied: sdl/repos/extra-x86_64/SDL-1.2.15-ignore_insane_joystick_axis.patch (from rev 291915, sdl/trunk/SDL-1.2.15-ignore_insane_joystick_axis.patch)
===================================================================
--- extra-x86_64/SDL-1.2.15-ignore_insane_joystick_axis.patch (rev 0)
+++ extra-x86_64/SDL-1.2.15-ignore_insane_joystick_axis.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -0,0 +1,20 @@
+changeset: 6324:95abff7adcc2
+branch: SDL-1.2
+parent: 6306:2b923729fd01
+user: Ryan C. Gordon <icculus at icculus.org>
+date: Sun Jun 03 04:49:25 2012 -0400
+summary: Linux evdev: ignore joystick axis events if they aren't in a sane range.
+
+diff -r 2b923729fd01 -r 95abff7adcc2 src/joystick/linux/SDL_sysjoystick.c
+--- a/src/joystick/linux/SDL_sysjoystick.c Sat May 12 23:32:51 2012 -0700
++++ b/src/joystick/linux/SDL_sysjoystick.c Sun Jun 03 04:49:25 2012 -0400
+@@ -1106,6 +1106,9 @@
+ }
+ break;
+ case EV_ABS:
++ if (code > ABS_MISC) {
++ break;
++ }
+ switch (code) {
+ case ABS_HAT0X:
+ case ABS_HAT0Y:
Deleted: extra-x86_64/SDL-1.2.15-no-default-backing-store.patch
===================================================================
--- extra-x86_64/SDL-1.2.15-no-default-backing-store.patch 2017-03-30 21:09:55 UTC (rev 291915)
+++ extra-x86_64/SDL-1.2.15-no-default-backing-store.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -1,24 +0,0 @@
-Do not harness backing store by default
-
-xorg-server 1.15 enables backing store if composite extension is enabled
-(default settings). Harnessing backing store through compositor leads to
-tearing effect.
-
-This patch reverts default harnessing backing store to conditional use if
-SDL_VIDEO_X11_BACKINGSTORE environment variable exists.
-
-<https://bugzilla.libsdl.org/show_bug.cgi?id=2383>
-<https://bugzilla.redhat.com/show_bug.cgi?id=1073057>
-
-diff -up SDL-1.2.15/src/video/x11/SDL_x11video.c.jx SDL-1.2.15/src/video/x11/SDL_x11video.c
---- SDL-1.2.15/src/video/x11/SDL_x11video.c.jx 2012-01-19 01:30:06.000000000 -0500
-+++ SDL-1.2.15/src/video/x11/SDL_x11video.c 2014-03-04 14:39:34.691545549 -0500
-@@ -1088,7 +1088,7 @@ static int X11_CreateWindow(_THIS, SDL_S
- }
- }
-
--#if 0 /* This is an experiment - are the graphics faster now? - nope. */
-+#if 1 /* This is an experiment - are the graphics faster now? - nope. */
- if ( SDL_getenv("SDL_VIDEO_X11_BACKINGSTORE") )
- #endif
- /* Cache the window in the server, when possible */
Copied: sdl/repos/extra-x86_64/SDL-1.2.15-no-default-backing-store.patch (from rev 291915, sdl/trunk/SDL-1.2.15-no-default-backing-store.patch)
===================================================================
--- extra-x86_64/SDL-1.2.15-no-default-backing-store.patch (rev 0)
+++ extra-x86_64/SDL-1.2.15-no-default-backing-store.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -0,0 +1,24 @@
+Do not harness backing store by default
+
+xorg-server 1.15 enables backing store if composite extension is enabled
+(default settings). Harnessing backing store through compositor leads to
+tearing effect.
+
+This patch reverts default harnessing backing store to conditional use if
+SDL_VIDEO_X11_BACKINGSTORE environment variable exists.
+
+<https://bugzilla.libsdl.org/show_bug.cgi?id=2383>
+<https://bugzilla.redhat.com/show_bug.cgi?id=1073057>
+
+diff -up SDL-1.2.15/src/video/x11/SDL_x11video.c.jx SDL-1.2.15/src/video/x11/SDL_x11video.c
+--- SDL-1.2.15/src/video/x11/SDL_x11video.c.jx 2012-01-19 01:30:06.000000000 -0500
++++ SDL-1.2.15/src/video/x11/SDL_x11video.c 2014-03-04 14:39:34.691545549 -0500
+@@ -1088,7 +1088,7 @@ static int X11_CreateWindow(_THIS, SDL_S
+ }
+ }
+
+-#if 0 /* This is an experiment - are the graphics faster now? - nope. */
++#if 1 /* This is an experiment - are the graphics faster now? - nope. */
+ if ( SDL_getenv("SDL_VIDEO_X11_BACKINGSTORE") )
+ #endif
+ /* Cache the window in the server, when possible */
Deleted: extra-x86_64/SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch
===================================================================
--- extra-x86_64/SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch 2017-03-30 21:09:55 UTC (rev 291915)
+++ extra-x86_64/SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -1,44 +0,0 @@
-From 4b56fa058a45b7c804d1a5fcaf7a70db0bd0581c Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <petr.pisar at atlas.cz>
-Date: Tue, 1 Jan 2013 21:25:15 +0100
-Subject: [PATCH] x11: Bypass SetGammaRamp when changing gamma
-
-Recent Xorg has broken dynamic colors setting, so calling SDL_SetGamme()
-does not have any effect here. Recent means xorg-server >= 1.7, since 2010.
-See <https://bugs.freedesktop.org/show_bug.cgi?id=27222>.
----
- src/video/SDL_gamma.c | 15 ++-------------
- 1 files changed, 2 insertions(+), 13 deletions(-)
-
-diff --git a/src/video/SDL_gamma.c b/src/video/SDL_gamma.c
-index 4fd0370..464ab88 100644
---- a/src/video/SDL_gamma.c
-+++ b/src/video/SDL_gamma.c
-@@ -92,22 +92,11 @@ static void CalculateGammaFromRamp(float *gamma, Uint16 *ramp)
-
- int SDL_SetGamma(float red, float green, float blue)
- {
-- int succeeded;
-+ int succeeded = -1;
- SDL_VideoDevice *video = current_video;
- SDL_VideoDevice *this = current_video;
-
-- succeeded = -1;
-- /* Prefer using SetGammaRamp(), as it's more flexible */
-- {
-- Uint16 ramp[3][256];
--
-- CalculateGammaRamp(red, ramp[0]);
-- CalculateGammaRamp(green, ramp[1]);
-- CalculateGammaRamp(blue, ramp[2]);
-- succeeded = SDL_SetGammaRamp(ramp[0], ramp[1], ramp[2]);
-- }
-- if ( (succeeded < 0) && video->SetGamma ) {
-- SDL_ClearError();
-+ if ( video->SetGamma ) {
- succeeded = video->SetGamma(this, red, green, blue);
- }
- return succeeded;
---
-1.7.8.6
-
Copied: sdl/repos/extra-x86_64/SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch (from rev 291915, sdl/trunk/SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch)
===================================================================
--- extra-x86_64/SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch (rev 0)
+++ extra-x86_64/SDL-1.2.15-x11-Bypass-SetGammaRamp-when-changing-gamma.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -0,0 +1,44 @@
+From 4b56fa058a45b7c804d1a5fcaf7a70db0bd0581c Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <petr.pisar at atlas.cz>
+Date: Tue, 1 Jan 2013 21:25:15 +0100
+Subject: [PATCH] x11: Bypass SetGammaRamp when changing gamma
+
+Recent Xorg has broken dynamic colors setting, so calling SDL_SetGamme()
+does not have any effect here. Recent means xorg-server >= 1.7, since 2010.
+See <https://bugs.freedesktop.org/show_bug.cgi?id=27222>.
+---
+ src/video/SDL_gamma.c | 15 ++-------------
+ 1 files changed, 2 insertions(+), 13 deletions(-)
+
+diff --git a/src/video/SDL_gamma.c b/src/video/SDL_gamma.c
+index 4fd0370..464ab88 100644
+--- a/src/video/SDL_gamma.c
++++ b/src/video/SDL_gamma.c
+@@ -92,22 +92,11 @@ static void CalculateGammaFromRamp(float *gamma, Uint16 *ramp)
+
+ int SDL_SetGamma(float red, float green, float blue)
+ {
+- int succeeded;
++ int succeeded = -1;
+ SDL_VideoDevice *video = current_video;
+ SDL_VideoDevice *this = current_video;
+
+- succeeded = -1;
+- /* Prefer using SetGammaRamp(), as it's more flexible */
+- {
+- Uint16 ramp[3][256];
+-
+- CalculateGammaRamp(red, ramp[0]);
+- CalculateGammaRamp(green, ramp[1]);
+- CalculateGammaRamp(blue, ramp[2]);
+- succeeded = SDL_SetGammaRamp(ramp[0], ramp[1], ramp[2]);
+- }
+- if ( (succeeded < 0) && video->SetGamma ) {
+- SDL_ClearError();
++ if ( video->SetGamma ) {
+ succeeded = video->SetGamma(this, red, green, blue);
+ }
+ return succeeded;
+--
+1.7.8.6
+
Deleted: extra-x86_64/X11_KeyToUnicode.patch
===================================================================
--- extra-x86_64/X11_KeyToUnicode.patch 2017-03-30 21:09:55 UTC (rev 291915)
+++ extra-x86_64/X11_KeyToUnicode.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -1,52 +0,0 @@
-
-# HG changeset patch
-# User Sam Lantinga <slouken at libsdl.org>
-# Date 1327258041 18000
-# Node ID 900a0fae90ca65cff55a70a17b9ec39d2ddccbcf
-# Parent 5273dfd19a5e8c5736a0d417bd441f704c5355f8
-Fixed bug 1390 - X11_KeyToUnicode
-
-manuel.montezelo 2012-01-22 08:56:18 PST
-
-We had the following bug report at Debian:
-http://bugs.debian.org/376560
-
-Same one in Ubuntu:
-https://bugs.launchpad.net/ubuntu/+source/libsdl1.2/+bug/66217
-
-We've been including a patch since then (attached) to actually export the
-symbol, since 2006. In the last release the function seems to be there, alive
-and kicking.
-
-It's affecting other people too:
-http://www.garagegames.com/community/forums/viewthread/52287
-
-diff -r 5273dfd19a5e -r 900a0fae90ca src/video/x11/SDL_x11events.c
---- a/src/video/x11/SDL_x11events.c Sat Jan 21 12:06:51 2012 -0500
-+++ b/src/video/x11/SDL_x11events.c Sun Jan 22 13:47:21 2012 -0500
-@@ -1246,8 +1246,11 @@
- * sequences (dead accents, compose key sequences) will not work since the
- * state has been irrevocably lost.
- */
-+extern DECLSPEC Uint16 SDLCALL X11_KeyToUnicode(SDLKey, SDLMod);
-+
- Uint16 X11_KeyToUnicode(SDLKey keysym, SDLMod modifiers)
- {
-+ static int warning = 0;
- struct SDL_VideoDevice *this = current_video;
- char keybuf[32];
- int i;
-@@ -1255,6 +1258,12 @@
- XKeyEvent xkey;
- Uint16 unicode;
-
-+ if ( warning ) {
-+ warning = 0;
-+ fprintf(stderr, "WARNING: Application is using X11_KeyToUnicode().\n");
-+ fprintf(stderr, "This is not an official SDL function, please report this as a bug.\n");
-+ }
-+
- if ( !this || !SDL_Display ) {
- return 0;
- }
-
Copied: sdl/repos/extra-x86_64/X11_KeyToUnicode.patch (from rev 291915, sdl/trunk/X11_KeyToUnicode.patch)
===================================================================
--- extra-x86_64/X11_KeyToUnicode.patch (rev 0)
+++ extra-x86_64/X11_KeyToUnicode.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -0,0 +1,52 @@
+
+# HG changeset patch
+# User Sam Lantinga <slouken at libsdl.org>
+# Date 1327258041 18000
+# Node ID 900a0fae90ca65cff55a70a17b9ec39d2ddccbcf
+# Parent 5273dfd19a5e8c5736a0d417bd441f704c5355f8
+Fixed bug 1390 - X11_KeyToUnicode
+
+manuel.montezelo 2012-01-22 08:56:18 PST
+
+We had the following bug report at Debian:
+http://bugs.debian.org/376560
+
+Same one in Ubuntu:
+https://bugs.launchpad.net/ubuntu/+source/libsdl1.2/+bug/66217
+
+We've been including a patch since then (attached) to actually export the
+symbol, since 2006. In the last release the function seems to be there, alive
+and kicking.
+
+It's affecting other people too:
+http://www.garagegames.com/community/forums/viewthread/52287
+
+diff -r 5273dfd19a5e -r 900a0fae90ca src/video/x11/SDL_x11events.c
+--- a/src/video/x11/SDL_x11events.c Sat Jan 21 12:06:51 2012 -0500
++++ b/src/video/x11/SDL_x11events.c Sun Jan 22 13:47:21 2012 -0500
+@@ -1246,8 +1246,11 @@
+ * sequences (dead accents, compose key sequences) will not work since the
+ * state has been irrevocably lost.
+ */
++extern DECLSPEC Uint16 SDLCALL X11_KeyToUnicode(SDLKey, SDLMod);
++
+ Uint16 X11_KeyToUnicode(SDLKey keysym, SDLMod modifiers)
+ {
++ static int warning = 0;
+ struct SDL_VideoDevice *this = current_video;
+ char keybuf[32];
+ int i;
+@@ -1255,6 +1258,12 @@
+ XKeyEvent xkey;
+ Uint16 unicode;
+
++ if ( warning ) {
++ warning = 0;
++ fprintf(stderr, "WARNING: Application is using X11_KeyToUnicode().\n");
++ fprintf(stderr, "This is not an official SDL function, please report this as a bug.\n");
++ }
++
+ if ( !this || !SDL_Display ) {
+ return 0;
+ }
+
Deleted: extra-x86_64/libsdl-1.2.15-resizing.patch
===================================================================
--- extra-x86_64/libsdl-1.2.15-resizing.patch 2017-03-30 21:09:55 UTC (rev 291915)
+++ extra-x86_64/libsdl-1.2.15-resizing.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -1,63 +0,0 @@
-Description: Revert change that breaks window corner resizing
- http://bugzilla.libsdl.org/show_bug.cgi?id=1430
-Author: Andrew Caudwell <acaudwell at gmail.com>
-Last-Update: 2012-04-10
-Bug-Debian: http://bugs.debian.org/665779
-
-diff -r c787fb1b5699 src/video/x11/SDL_x11events.c
---- a/src/video/x11/SDL_x11events.c Mon Feb 20 23:51:08 2012 -0500
-+++ b/src/video/x11/SDL_x11events.c Mon Mar 26 12:26:52 2012 +1300
-@@ -57,12 +57,6 @@
- static SDLKey MISC_keymap[256];
- SDLKey X11_TranslateKeycode(Display *display, KeyCode kc);
-
--/*
-- Pending resize target for ConfigureNotify (so outdated events don't
-- cause inappropriate resize events)
--*/
--int X11_PendingConfigureNotifyWidth = -1;
--int X11_PendingConfigureNotifyHeight = -1;
-
- #ifdef X_HAVE_UTF8_STRING
- Uint32 Utf8ToUcs4(const Uint8 *utf8)
-@@ -825,16 +819,6 @@
- #ifdef DEBUG_XEVENTS
- printf("ConfigureNotify! (resize: %dx%d)\n", xevent.xconfigure.width, xevent.xconfigure.height);
- #endif
-- if ((X11_PendingConfigureNotifyWidth != -1) &&
-- (X11_PendingConfigureNotifyHeight != -1)) {
-- if ((xevent.xconfigure.width != X11_PendingConfigureNotifyWidth) &&
-- (xevent.xconfigure.height != X11_PendingConfigureNotifyHeight)) {
-- /* Event is from before the resize, so ignore. */
-- break;
-- }
-- X11_PendingConfigureNotifyWidth = -1;
-- X11_PendingConfigureNotifyHeight = -1;
-- }
- if ( SDL_VideoSurface ) {
- if ((xevent.xconfigure.width != SDL_VideoSurface->w) ||
- (xevent.xconfigure.height != SDL_VideoSurface->h)) {
-diff -r c787fb1b5699 src/video/x11/SDL_x11events_c.h
---- a/src/video/x11/SDL_x11events_c.h Mon Feb 20 23:51:08 2012 -0500
-+++ b/src/video/x11/SDL_x11events_c.h Mon Mar 26 12:26:52 2012 +1300
-@@ -27,8 +27,3 @@
- extern void X11_InitOSKeymap(_THIS);
- extern void X11_PumpEvents(_THIS);
- extern void X11_SetKeyboardState(Display *display, const char *key_vec);
--
--/* Variables to be exported */
--extern int X11_PendingConfigureNotifyWidth;
--extern int X11_PendingConfigureNotifyHeight;
--
-diff -r c787fb1b5699 src/video/x11/SDL_x11video.c
---- a/src/video/x11/SDL_x11video.c Mon Feb 20 23:51:08 2012 -0500
-+++ b/src/video/x11/SDL_x11video.c Mon Mar 26 12:26:52 2012 +1300
-@@ -1182,8 +1182,6 @@
- current = NULL;
- goto done;
- }
-- X11_PendingConfigureNotifyWidth = width;
-- X11_PendingConfigureNotifyHeight = height;
- } else {
- if (X11_CreateWindow(this,current,width,height,bpp,flags) < 0) {
- current = NULL;
Copied: sdl/repos/extra-x86_64/libsdl-1.2.15-resizing.patch (from rev 291915, sdl/trunk/libsdl-1.2.15-resizing.patch)
===================================================================
--- extra-x86_64/libsdl-1.2.15-resizing.patch (rev 0)
+++ extra-x86_64/libsdl-1.2.15-resizing.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -0,0 +1,63 @@
+Description: Revert change that breaks window corner resizing
+ http://bugzilla.libsdl.org/show_bug.cgi?id=1430
+Author: Andrew Caudwell <acaudwell at gmail.com>
+Last-Update: 2012-04-10
+Bug-Debian: http://bugs.debian.org/665779
+
+diff -r c787fb1b5699 src/video/x11/SDL_x11events.c
+--- a/src/video/x11/SDL_x11events.c Mon Feb 20 23:51:08 2012 -0500
++++ b/src/video/x11/SDL_x11events.c Mon Mar 26 12:26:52 2012 +1300
+@@ -57,12 +57,6 @@
+ static SDLKey MISC_keymap[256];
+ SDLKey X11_TranslateKeycode(Display *display, KeyCode kc);
+
+-/*
+- Pending resize target for ConfigureNotify (so outdated events don't
+- cause inappropriate resize events)
+-*/
+-int X11_PendingConfigureNotifyWidth = -1;
+-int X11_PendingConfigureNotifyHeight = -1;
+
+ #ifdef X_HAVE_UTF8_STRING
+ Uint32 Utf8ToUcs4(const Uint8 *utf8)
+@@ -825,16 +819,6 @@
+ #ifdef DEBUG_XEVENTS
+ printf("ConfigureNotify! (resize: %dx%d)\n", xevent.xconfigure.width, xevent.xconfigure.height);
+ #endif
+- if ((X11_PendingConfigureNotifyWidth != -1) &&
+- (X11_PendingConfigureNotifyHeight != -1)) {
+- if ((xevent.xconfigure.width != X11_PendingConfigureNotifyWidth) &&
+- (xevent.xconfigure.height != X11_PendingConfigureNotifyHeight)) {
+- /* Event is from before the resize, so ignore. */
+- break;
+- }
+- X11_PendingConfigureNotifyWidth = -1;
+- X11_PendingConfigureNotifyHeight = -1;
+- }
+ if ( SDL_VideoSurface ) {
+ if ((xevent.xconfigure.width != SDL_VideoSurface->w) ||
+ (xevent.xconfigure.height != SDL_VideoSurface->h)) {
+diff -r c787fb1b5699 src/video/x11/SDL_x11events_c.h
+--- a/src/video/x11/SDL_x11events_c.h Mon Feb 20 23:51:08 2012 -0500
++++ b/src/video/x11/SDL_x11events_c.h Mon Mar 26 12:26:52 2012 +1300
+@@ -27,8 +27,3 @@
+ extern void X11_InitOSKeymap(_THIS);
+ extern void X11_PumpEvents(_THIS);
+ extern void X11_SetKeyboardState(Display *display, const char *key_vec);
+-
+-/* Variables to be exported */
+-extern int X11_PendingConfigureNotifyWidth;
+-extern int X11_PendingConfigureNotifyHeight;
+-
+diff -r c787fb1b5699 src/video/x11/SDL_x11video.c
+--- a/src/video/x11/SDL_x11video.c Mon Feb 20 23:51:08 2012 -0500
++++ b/src/video/x11/SDL_x11video.c Mon Mar 26 12:26:52 2012 +1300
+@@ -1182,8 +1182,6 @@
+ current = NULL;
+ goto done;
+ }
+- X11_PendingConfigureNotifyWidth = width;
+- X11_PendingConfigureNotifyHeight = height;
+ } else {
+ if (X11_CreateWindow(this,current,width,height,bpp,flags) < 0) {
+ current = NULL;
Deleted: extra-x86_64/sdl-1.2.14-disable-mmx.patch
===================================================================
--- extra-x86_64/sdl-1.2.14-disable-mmx.patch 2017-03-30 21:09:55 UTC (rev 291915)
+++ extra-x86_64/sdl-1.2.14-disable-mmx.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -1,13 +0,0 @@
-# and another one from FS#26020
-
---- a/src/video/SDL_yuv_sw.c 2009-10-13 06:07:15.000000000 +0700
-+++ b/src/video/SDL_yuv_sw.c 2011-09-20 19:26:30.247742620 +0700
-@@ -89,6 +89,8 @@
- #include "SDL_yuvfuncs.h"
- #include "SDL_yuv_sw_c.h"
-
-+#undef __OPTIMIZE__
-+
- /* The functions used to manipulate software video overlays */
- static struct private_yuvhwfuncs sw_yuvfuncs = {
- SDL_LockYUV_SW,
Copied: sdl/repos/extra-x86_64/sdl-1.2.14-disable-mmx.patch (from rev 291915, sdl/trunk/sdl-1.2.14-disable-mmx.patch)
===================================================================
--- extra-x86_64/sdl-1.2.14-disable-mmx.patch (rev 0)
+++ extra-x86_64/sdl-1.2.14-disable-mmx.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -0,0 +1,13 @@
+# and another one from FS#26020
+
+--- a/src/video/SDL_yuv_sw.c 2009-10-13 06:07:15.000000000 +0700
++++ b/src/video/SDL_yuv_sw.c 2011-09-20 19:26:30.247742620 +0700
+@@ -89,6 +89,8 @@
+ #include "SDL_yuvfuncs.h"
+ #include "SDL_yuv_sw_c.h"
+
++#undef __OPTIMIZE__
++
+ /* The functions used to manipulate software video overlays */
+ static struct private_yuvhwfuncs sw_yuvfuncs = {
+ SDL_LockYUV_SW,
Deleted: extra-x86_64/sdl-1.2.14-fix-mouse-clicking.patch
===================================================================
--- extra-x86_64/sdl-1.2.14-fix-mouse-clicking.patch 2017-03-30 21:09:55 UTC (rev 291915)
+++ extra-x86_64/sdl-1.2.14-fix-mouse-clicking.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -1,23 +0,0 @@
---- SDL-1.2.14/src/video/x11/SDL_x11events.c.orig 2010-04-08 11:57:05.003169834 -0700
-+++ SDL-1.2.14/src/video/x11/SDL_x11events.c 2010-04-08 12:33:51.690926340 -0700
-@@ -423,12 +423,15 @@
- if ( xevent.xcrossing.mode == NotifyUngrab )
- printf("Mode: NotifyUngrab\n");
- #endif
-- if ( this->input_grab == SDL_GRAB_OFF ) {
-- posted = SDL_PrivateAppActive(1, SDL_APPMOUSEFOCUS);
-+ if ( (xevent.xcrossing.mode != NotifyGrab) &&
-+ (xevent.xcrossing.mode != NotifyUngrab) ) {
-+ if ( this->input_grab == SDL_GRAB_OFF ) {
-+ posted = SDL_PrivateAppActive(1, SDL_APPMOUSEFOCUS);
-+ }
-+ posted = SDL_PrivateMouseMotion(0, 0,
-+ xevent.xcrossing.x,
-+ xevent.xcrossing.y);
- }
-- posted = SDL_PrivateMouseMotion(0, 0,
-- xevent.xcrossing.x,
-- xevent.xcrossing.y);
- }
- break;
-
Copied: sdl/repos/extra-x86_64/sdl-1.2.14-fix-mouse-clicking.patch (from rev 291915, sdl/trunk/sdl-1.2.14-fix-mouse-clicking.patch)
===================================================================
--- extra-x86_64/sdl-1.2.14-fix-mouse-clicking.patch (rev 0)
+++ extra-x86_64/sdl-1.2.14-fix-mouse-clicking.patch 2017-03-30 21:11:51 UTC (rev 291916)
@@ -0,0 +1,23 @@
+--- SDL-1.2.14/src/video/x11/SDL_x11events.c.orig 2010-04-08 11:57:05.003169834 -0700
++++ SDL-1.2.14/src/video/x11/SDL_x11events.c 2010-04-08 12:33:51.690926340 -0700
+@@ -423,12 +423,15 @@
+ if ( xevent.xcrossing.mode == NotifyUngrab )
+ printf("Mode: NotifyUngrab\n");
+ #endif
+- if ( this->input_grab == SDL_GRAB_OFF ) {
+- posted = SDL_PrivateAppActive(1, SDL_APPMOUSEFOCUS);
++ if ( (xevent.xcrossing.mode != NotifyGrab) &&
++ (xevent.xcrossing.mode != NotifyUngrab) ) {
++ if ( this->input_grab == SDL_GRAB_OFF ) {
++ posted = SDL_PrivateAppActive(1, SDL_APPMOUSEFOCUS);
++ }
++ posted = SDL_PrivateMouseMotion(0, 0,
++ xevent.xcrossing.x,
++ xevent.xcrossing.y);
+ }
+- posted = SDL_PrivateMouseMotion(0, 0,
+- xevent.xcrossing.x,
+- xevent.xcrossing.y);
+ }
+ break;
+
More information about the arch-commits
mailing list