>> what's going on here, IIUC it takes some time (at least a couple of >> seconds) for a frame to show up on Vframe_list. > > It should not matter at all, because x_create_frame cannot make the new > frame known to lisp before it is added to Vframe_alist. I suppose you mean Vframe_list. At least on my system I can see frames that are not returned by `frame-list'. >> (1) Check whether the frame passed to next_frame is in Vframe_list and >> quit if it isn't. >> >> (2) Put a maximum of 100 frames investigated on the loop in next_frame >> so there should be no endless looping otherwise. > > This is just doctoring the symptoms. What did you expect me to do? I first have to find out whether the looping really is in next_frame. Or do you have a definitive clue? BTW my doctoring patch has an obvious bug which should be corrected in the new attachment. > There is an invariant that *every* > live frame is on Vframe_alist. If that invariant is violated then this > is the bug that must be fixed. Such an invariant seems obvious but I don't see it neither formulated nor preserved. And why is Vframe_alist "V" prefixed but not available in Lisp? martin