Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!csd4.milw.wisc.edu!uxc!uxc.cso.uiuc.edu!m.cs.uiuc.edu!s.cs.uiuc.edu!carroll From: carroll@s.cs.uiuc.edu Newsgroups: comp.windows.x Subject: GNU-Emacs vs. XLoadQueryFont() Message-ID: <216500008@s.cs.uiuc.edu> Date: 20 May 89 19:02:00 GMT Lines: 35 Nf-ID: #N:s.cs.uiuc.edu:216500008:000:2053 Nf-From: s.cs.uiuc.edu!carroll May 20 14:02:00 1989 I'm at loss on this one. Setup: Hacking GNU-Emacs 18.52 to use multiple X-windows (which I call "screens", to differentiate from Emacs-windows). Problem: I've got it mostly working, but in trying to install defaults processing I've broken it. Currently, it stores command line/.Xdefaults specifications in a screen-defaults structure. This is passed to the screen-creator function to actually create a screen. This works fine for the two initial screens (an edit screen and the minibuff screen). However, after that Emacs fudges the X-connection numbers and sets up IO handlers to grab all the X-windows IO. When I try to create another screen, the screen-creator calls XLoadQueryFont() to set up a font for the new screen (which could have been changed since the intial creation). At this point everything locks up, and I get a bunch of messages of the form Xlib: sequence lost (0x1000a > 0x15c) in reply type 0x0! These seem to be X-events that are getting lost (e.g., they stop after a bit, and are afterwards generated by moving the cursor in/out of the screen). Emacs uses a procudure to read input (internal_socket_read()), and I have a trap for any event that's not one of the standard types, but it's not tripping. But if I core-dump it (by kill -6 ), the core image claims that it's in internal_socket_read(). I strongly suspect that the problem is contention between internal_socket_read() and XLoadQueryFont() in trying to talk to the server. Request: Any hints at all would be appreciated. In particuar, can anyone give me some pointers to where to look for information on this sort of thing? I _don't_ want to spend the next 2 months reading the entire X-docs. Can I tap into the protocol exchange? What does QueryFont() say to the server, and what does it send in reply? What X-doc talks about this? Many thanks! Alan M. Carroll "And there you are carroll@s.cs.uiuc.edu Saying 'We have the Moon, so now the Stars...'" CS Grad / U of Ill @ Urbana ...{ucbvax,pur-ee,convex}!s.cs.uiuc.edu!carroll