On Wednesday 15 April 2009 04:44:40 Peter Hutterer wrote: > On Tue, Apr 14, 2009 at 10:54:10AM +0500, Suren Karapetyan wrote: > > On Tuesday 14 April 2009 05:50:34 Peter Hutterer wrote: > > > - the keyboard driver now uses XKB instead of its own hardcoded > > > zapping. > > > > Does this solution have the same chance to kill X as the hardcoded one > > had? I mean: is it possible for situations where this solution doesn't > > work but the old one does? (like broken grabs...) > > There's no difference to before. > > Let me explain in a bit more detail. zapping consists of two parts: > - the Terminate_Server XKB symbol triggers the action, if you don't have > this symbol, you can't trigger it. > - The DontZap setting controls whether the Terminate_Server action will > actually do anything when you trigger it. > > The keyboard driver had - from the times before XKB was around - code for > so-called "Special Key" handling. Including a hard-coded path for C-A-B. > This means that even if you move the Terminate_Server symbol to another key > or remove it altogether, the keyboard driver would zap the server on C-A-B. > This is what's been removed, it now posts the keycode, and passes through > the xkb action handling. > > The only time when the old code _could_ have worked but the new one didn't > is if the server is stuck somewhere in the main loop but still handles > signals fine - so the zapping would be triggered during the SIGIO handling. > > I said "could", because the keyboard driver didn't use signals for input > events, it just got polled (checked the git logs, goes back to the original > X.Org import from Xfree86). So kbd was relying on a working main loop > anyway. > > The only difference is that we can move or remove the Terminate_Server > symbol key now. > > Makes sense? > > Cheers, > Peter Thanks for the explanation! It makes sense now. Suren -- fedora-devel-list mailing list fedora-devel-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/fedora-devel-list