diff --git a/tigervnc-key_is_down.patch b/tigervnc-key_is_down.patch deleted file mode 100644 index 98cdf49..0000000 --- a/tigervnc-key_is_down.patch +++ /dev/null @@ -1,50 +0,0 @@ -diff -up tigervnc-1.3.0/unix/xserver/hw/vnc/InputXKB.cc.key_is_down tigervnc-1.3.0/unix/xserver/hw/vnc/InputXKB.cc ---- tigervnc-1.3.0/unix/xserver/hw/vnc/InputXKB.cc.key_is_down 2013-07-24 12:54:41.461930866 +0100 -+++ tigervnc-1.3.0/unix/xserver/hw/vnc/InputXKB.cc 2013-07-24 13:04:39.743663652 +0100 -@@ -321,7 +321,11 @@ std::list InputDevice::releaseS - XkbAction *act; - unsigned char mask; - -- if (!key_is_down(master, key, KEY_PROCESSED)) -+ int bit; -+ BYTE *kptr; -+ kptr = &master->key->down[key >> 3]; -+ bit = 1 << (key & 7); -+ if (*kptr & bit) - continue; - - act = XkbKeyActionPtr(xkb, key, state); -@@ -402,7 +406,11 @@ std::list InputDevice::releaseL - XkbAction *act; - unsigned char key_mask; - -- if (!key_is_down(master, key, KEY_PROCESSED)) -+ int bit; -+ BYTE *kptr; -+ kptr = &master->key->down[key >> 3]; -+ bit = 1 << (key & 7); -+ if (*kptr & bit) - continue; - - act = XkbKeyActionPtr(xkb, key, state); -@@ -638,6 +646,8 @@ void InputDevice::vncXkbProcessDeviceEve - - if (event->device_event.sourceid == self->keyboardDev->id) { - XkbControlsPtr ctrls; -+ int bit; -+ BYTE *kptr; - - /* - * We need to bypass AccessX since it is timing sensitive and -@@ -651,8 +661,10 @@ void InputDevice::vncXkbProcessDeviceEve - * This flag needs to be set for key repeats to be properly - * respected. - */ -+ kptr = &dev->key->down[event->device_event.detail.key >> 3]; -+ bit = 1 << (event->device_event.detail.key & 7); - if ((event->device_event.type == ET_KeyPress) && -- key_is_down(dev, event->device_event.detail.key, KEY_PROCESSED)) -+ (*kptr & bit)) - event->device_event.key_repeat = TRUE; - } - diff --git a/tigervnc.spec b/tigervnc.spec index 8986c43..905dc36 100644 --- a/tigervnc.spec +++ b/tigervnc.spec @@ -1,6 +1,6 @@ Name: tigervnc Version: 1.3.0 -Release: 6%{?dist} +Release: 7%{?dist} Summary: A TigerVNC remote display system Group: User Interface/Desktops @@ -46,7 +46,6 @@ Patch6: tigervnc-setcursor-crash.patch Patch7: tigervnc-manpages.patch Patch8: tigervnc-getmaster.patch Patch9: tigervnc-shebang.patch -Patch10: tigervnc-key_is_down.patch %description Virtual Network Computing (VNC) is a remote display system which @@ -169,9 +168,6 @@ popd # Don't use shebang in vncserver script. %patch9 -p1 -b .shebang -# libvnc.so: don't use unexported key_is_down function. -%patch10 -p1 -b .key_is_down - %build %ifarch sparcv9 sparc64 s390 s390x export CFLAGS="$RPM_OPT_FLAGS -fPIC" @@ -340,6 +336,10 @@ fi %{_datadir}/icons/hicolor/*/apps/* %changelog +* Tue Sep 24 2013 Tim Waugh 1.3.0-7 +- Removed incorrect patch (for unexpected key_is_down). Fixes stuck + keys bug (bug #989502). + * Thu Sep 19 2013 Tim Waugh 1.3.0-6 - Fixed typo in 10-libvnc.conf (bug #1009111).