Daniel Jacobowitz escreveu: > On Mon, Mar 19, 2007 at 10:57:53PM +0000, Pedro Alves wrote: > >> That has exactly the same effect as it was before the your select frame >> changes. >> That is, only try to get the selected frame when there is one. Maybe there >> should >> still be a function like this in frame.c ? >> > > >> struct frame_info * >> deprecated_get_selected_frame () >> { >> return selected_frame; >> } >> > > Neither this, or your (level >= 0), worked - they both make tui enter some kind of loop, that I can't get a trace. Perhaps in some other host it would be easier (I'm on Cygwin). Bummer. >> (or perhaps call it get_selected_frame_if_any) >> > > The problem is that when we reinitialize the frame cache, the selected > frame is indeterminate - the selected_frame global may randomly be > initialized or NULL depending on what else has been called since we > last did reinit_frame_cache. > Maybe that has something to do with the hangs I see. How about the attached? Move the selected_frame creation logic to select_frame. It fixes both the remote debugging problem, and the repainting problems - probably caused by the get_selected_frame calling select_frame generating extra spurious events. It would need a testsuite run and a bit of cleanup, since the get_selected_frame would lose the parameter. Cheers, Pedro Alves