svn commit: r531556 - in branches/2020Q2/x11/libxfce4menu: . files
Guido Falsi
madpilot at FreeBSD.org
Sun Apr 12 20:47:19 UTC 2020
Author: madpilot
Date: Sun Apr 12 20:47:19 2020
New Revision: 531556
URL: https://svnweb.freebsd.org/changeset/ports/531556
Log:
MFH: r531554
x11/libxfce4menu: Fix leaked keygrabs when layout changes
As diagnosed by Jethro Nederhof, xfce-shortcuts-grabber.c attempts to update
grabbed key shortcuts when xkeyboard layout changes. Unfortunately, it had no
memory of which keycodes it has actually grabbed. Instead, it attempted to
ungrab the *new* keycode, which obviously doesn't actually ungrab those codes.
This went unnoticed for some time, probably because nothing collided with
important keys. Recently, a default PrintScreen shortcut was added to Xfce,
which for whatever reason seems to collide with Up in initial layout. When the
kbd layout changes, the shortcut ungrabs the *new* Printscreen keycode and then
re-grabs the same keycode, leaving the Up keycode grabbed.
Fix this by giving xfce-shortcuts-grabber some memory of which keycodes it has
grabbed. When it grabs a key, it remembers the keycode it grabbed in the
XfceKey object. When it ungrabs a key, it ungrabs the keycodes in the XfceKey
object, rather than those for the new keyboard layout.
PR: 244290
Reported by: Aryeh Friedman <aryeh.friedman AT gmail.com>, many others
Approved by: madpilot
Differential Revision: https://reviews.freebsd.org/D24338
Approved by: portmgr (blanket, runtime fix)
Added:
branches/2020Q2/x11/libxfce4menu/files/
- copied from r531554, head/x11/libxfce4menu/files/
Modified:
branches/2020Q2/x11/libxfce4menu/Makefile
Directory Properties:
branches/2020Q2/ (props changed)
Modified: branches/2020Q2/x11/libxfce4menu/Makefile
==============================================================================
--- branches/2020Q2/x11/libxfce4menu/Makefile Sun Apr 12 20:26:31 2020 (r531555)
+++ branches/2020Q2/x11/libxfce4menu/Makefile Sun Apr 12 20:47:19 2020 (r531556)
@@ -3,6 +3,7 @@
PORTNAME= libxfce4menu
PORTVERSION= 4.14.1
+PORTREVISION= 1
CATEGORIES= x11 xfce
MASTER_SITES= XFCE
DISTNAME= libxfce4ui-${DISTVERSIONFULL}
More information about the svn-ports-all
mailing list