NetBSD-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Listing X11 grabs with XF86LogGrabInfo



Hello,

The Internet suggests performing

xdotool key XF86LogGrabInfo

in order to list grabs that are currently running on the server, however it outputs

(symbol) No such key name 'XF86LogGrabInfo'. Ignoring it.
(symbol) No such key name 'XF86LogGrabInfo'. Ignoring it.

and does not print anything to the log file. I ran it through a debugger and it seems like it's failing because XStringToKeysym is returning NoSymbol when passed "XF86LogGrabInfo", as illustrated by the following code:

0 thinkpad$ cat m.c
#include <stdio.h>
#include <stdlib.h>
#include <X11/Xlib.h>

int main() {
        Display *dpy = XOpenDisplay(NULL);
        if (dpy == NULL) {
                fprintf(stderr, "XOpenDisplay failed.\n");
                exit (1);
        }

        KeySym ksym = XStringToKeysym("XF86LogGrabInfo");
        printf("Keysym: %lu\n", (unsigned long)ksym);

        XCloseDisplay(dpy);
}
0 thinkpad$ cat Makefile                                                       
a.out: m.c
        cc -I/usr/X11R7/include -L/usr/X11R7/lib m.c -lX11 -Wl,-R/usr/X11R7/lib
0 thinkpad$ make
cc -I/usr/X11R7/include -L/usr/X11R7/lib m.c -lX11 -Wl,-R/usr/X11R7/lib
0 thinkpad$ ./a.out                                                            
Keysym: 0
0 thinkpad$

Considering that many other people used xdotool in this manner successfully, I suspect that either NetBSD has a bug here or there is some trick to make this work. As suggested in https://who-t.blogspot.com/2012/01/xkb-breaking-grabs-cve-2012-0064.html I ran

setxkbmap -option grab:break_actions

and also

setxkbmap -option grab:debug

and although these settings were reflected in the output of setxkbmap -query, they did not solve the problem.

Is there some trick to enabling this functionality or should I file a problem report?

Thanks!


Home | Main Index | Thread Index | Old Index