It looks like the gui menu runs through timer_check to check for any emacs timers, and when the clipmon timer is triggered, it checks the x selection, which also runs through timer_check. Putting the clipmon timer through that routine twice might be throwing things off - it seems like it's the second pass which get stuck in an endless loop. I'm not positive about that though - I'm still learning my way around the system and gdb. I'll keep tracing through it - I've been wanted to learn more about Emacs internals so I could work on them someday, and this looks like as good a place as any to start... Brian On Thu, Dec 24, 2015 at 10:20 AM, Eli Zaretskii wrote: > > From: Brian Burns > > Date: Thu, 24 Dec 2015 01:43:39 -0600 > > Cc: Eli Zaretskii , 22214@debbugs.gnu.org > > > > I looked at some of the internals - as Eli said there's an event loop > for the x > > dialog that also checks the existing Emacs timers, which in this case > would be > > checking the x selection and starting another timer. > > What I don't understand is how menus enter the picture, since the > lockup doesn't happen unless a menu is open. > > Understanding that might be an important step towards finding a > solution. >