Tag Archives: gtk

VMware modifier keys bugs: update

Some updates since the last post:

The "GTK dies on a keypress" bug

Good news: it was fixed by Matthias Clasen. It was solved in the SVN version, I guess that we'll have to wait a while till it gets into the next version, Unless package maintainers would manually add it.

Doing a good QA in the FOSS community

I've learned a quick lesson about good QA in the open source community, which I find very rare.

In this case the bug was reported for ~2 months with no activity ("it sometimes crashes" type of report). Until I've added my description, which, probably helped it to get closed.

I'll try to sum up what I've learned:

Continue reading

VMware modifier keys bug status

This annoying vmware-deletes-the-modifier-keys bug I wrote about is still a mystery, but still I gained some more info. There are two problems:

1. VMware deletes modifier keys:

  • Can be replicated by holding a modifier key down inside a guest OS (VMware console). Then moving the mouse out of the guest OS window, while modifier is still down.
  • Happens on modern Ubuntu/Debian/Arch Linux versions.
  • Very likely, but not 100% confirmed: happens since Xorg 7.3.
  • Doesn't happen on CentOS / RedHat EL 5. (Apparently because they use Xorg 7.1.1?)
  • Links: Ubuntu launchpad, VMware forums.

Still, is it an Xorg bug or VMware one? (or GTK)

2. GTK apps crash on a keypress, when X modifiers-list is empty.

  • If 'xmodmap' is emptied (either by the VMware bug described above, or by manually removing all the modifiers), each new-running GTK app would just crash as the first key is pressed.
  • This doesn't happen to KDE or plain-X11 apps.
  • Segmentation fault is received in the _gdk_keymap_key_is_modifier() function in gdkkeys-x11.c:1662.
  • I tried digging the code, but no luck yet (all I could do is skip the function if no modifiers are set, but I don't know GDK enough to know the other effects it can have).
  • Links: Gnome bugzilla.

I'll keep updating in case there'll be something interesting.

Update: gtk bug got fixed.