From da870385bd7b6fcd74cf7b89fd1a659a02226bde Mon Sep 17 00:00:00 2001 From: cutealien Date: Sat, 20 Jun 2009 09:22:51 +0000 Subject: [PATCH] bugfix for 2795321 found by egrath: Don't rely anymore on broken XkbSetDetectableAutoRepeat. git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@2428 dfc29bdd-3216-0410-991c-e03cc46cb475 --- changes.txt | 3 +++ source/Irrlicht/CIrrDeviceLinux.cpp | 5 +++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/changes.txt b/changes.txt index de1cc5cc..669630e3 100644 --- a/changes.txt +++ b/changes.txt @@ -1,4 +1,7 @@ Changes in 1.6 + + - bugfix for 2795321 found by egrath: Don't rely anymore on broken XkbSetDetectableAutoRepeat. + - bugfix: Use make_lower throughout for spritebank filenames (found and patched by Ion Dune) - bugfix: CMountPointReader::openFile no longer returns true for empty files. Corresponding test added. diff --git a/source/Irrlicht/CIrrDeviceLinux.cpp b/source/Irrlicht/CIrrDeviceLinux.cpp index 57ad7f41..779a3001 100644 --- a/source/Irrlicht/CIrrDeviceLinux.cpp +++ b/source/Irrlicht/CIrrDeviceLinux.cpp @@ -579,7 +579,8 @@ bool CIrrDeviceLinux::createWindow() XMapRaised(display, window); } WindowMinimized=false; - XkbSetDetectableAutoRepeat(display, True, &AutorepeatSupport); + // Currently broken in X, see Bug ID 2795321 + // XkbSetDetectableAutoRepeat(display, True, &AutorepeatSupport); #ifdef _IRR_COMPILE_WITH_OPENGL_ @@ -856,7 +857,7 @@ bool CIrrDeviceLinux::run() break; case KeyRelease: - if (0 == AutorepeatSupport) + if (0 == AutorepeatSupport && (XPending( display ) > 0) ) { // check for Autorepeat manually // We'll do the same as Windows does: Only send KeyPressed