It's useful to have a working X server if a client holds a grab when it triggers a debugger breakpoint

Peter Hutterer peter.hutterer at who-t.net
Mon May 25 20:17:15 PDT 2009


On Tue, May 26, 2009 at 11:56:58AM +1000, David Campbell wrote:
> Owen Taylor wrote:
> > On Tue, 2009-05-26 at 10:00 +1000, David Campbell wrote:
> >   
> >> Hi,
> >>
> >> Many/most GUI toolkits implement pop up menus using grabs.  This can 
> >> cause major desktop lockups when debugging GUI applications, because 
> >> hitting breakpoints in pop up menu callback code will occur while a grab 
> >> is active.
> >>
> >> Reaching a breakpoint while a grab is active indefinitely locks up the X 
> >> server, leaving a standalone desktop user the only option but to power 
> >> down and suffer potential data loss.
> >>     
> >
> > Or kill the debugging process by switching to a VT or remotely
> Hi Owen,
> 
> Thanks for your reply.
> 
> By "switching to a VT", did you mean pressing CTRL-ALT-<number> to 
> switch to a virtual terminal?
> 
> That doesn't work for me, due to the grab.  Pressing those keystrokes is 
> unresponsive, thus for a standalone system in a location where there are 
> no other computers, it still appears that the only option in the 
> situation of hitting a breakpoint during a grab, is to force a power 
> down and reboot.
> 

VT switching only works as long as the grab is asynchronous, otherwise
events are queued up on the device for replaying and never pass through the
XKB paths that trigger this behaviour.

Cheers,
  Peter



More information about the xorg mailing list