Hi Richard,
Thank you for digging down the detail for this problem. Hope this problem could be fixed soon. Yes, we are porting our debugger GUI for GDB to support lldb. Its existing framework is based on capturing output. I am writing some python commands to create a bridge to generate parser friendly output. I am working feature by feature. I hope this way can work for all features. Thanks, Yin From: Richard Mitton [mailto:[email protected]] Sent: Friday, October 04, 2013 10:21 AM To: [email protected] Cc: Yin Ma; [email protected] Subject: Re: [lldb-dev] Different Behavior between Terminal and GUI simulated terminal I've noticed this same bug myself, and actually spent a while this week trying to fix it (with no luck). The problem is simply a threading race condition, which manifests sometimes. You can usually (on Linux at least) trigger it by just doing a 'run' repeatedly until it happens. It's because the process's input reader is created asynchronously on a thread, so isn't guaranteed to be at the top of the input stack at the time the 'run' command has finished. So the driver may or may not try to refresh the prompt. I don't have a fix for this I'm afraid. Also, regarding the original problem, it sounds to me like you're trying to capture the lldb output so you can build a debugger interface on top (like GDB interfaces often work). For what it's worth, this is a really bad idea. lldb has a C++ and Python API which are much better suited for that kind of thing. -- Richard Mitton [email protected] <mailto:[email protected]> [email protected] Friday, October 04, 2013 8:41 AM Did you launch the two processes in the same way in both cases? It looks like in the first instance lldb is running synchronously, and in the second instance asynchronously. I sent a note to the list a couple of days ago describing when lldb uses the two modes, check that and see if it explains what you are seeing. Otherwise, this may be some bug in the input driver? Jim _______________________________________________ lldb-dev mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev <mailto:[email protected]> Yin Ma Thursday, October 03, 2013 11:30 PM Hi, I got different behavior between run lldb under regular terminal And GUI simulated terminal (posix_openpt or pipe based). In the regular terminal: (lldb) run Process 10992 launched: ‘…’ Process 10992 stopped Thread … In the GUI, If I run the same thing, I got (lldb) run Process 10992 launched: ‘…’ (lldb) Process 10992 stopped Thread … There already is (lldb) after the first line. My lldb is 179.5 Could anybody let me know why there is this difference? And How to switch to the regular mode? Thanks, Yin _______________________________________________ lldb-dev mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
<<image001.jpg>>
_______________________________________________ lldb-dev mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
