[Lldb-commits] [lldb] r202525 - Fixed all overlapping prompt issues.
Greg Clayton
gclayton at apple.com
Mon Mar 3 10:05:44 PST 2014
This might be happening because you guys don't actually hookup stdin/out/err on FreeBSD to the child process? If so, then I know why this is happening.
On Feb 28, 2014, at 11:37 AM, Ed Maste <emaste at freebsd.org> wrote:
> On 28 February 2014 13:22, Greg Clayton <gclayton at apple.com> wrote:
>> Author: gclayton
>> Date: Fri Feb 28 12:22:24 2014
>> New Revision: 202525
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=202525&view=rev
>> Log:
>> Fixed all overlapping prompt issues.
>>
>> I carefully reviewed exactly how the IOHandlers interact and found places where we weren't properly controlling things. There should be no overlapping prompts and all output should now come out in a controlled fashion.
>>
>> <rdar://problem/16111293>
>
> Hi Greg,
>
> After this change I still encountered an issue on FreeBSD where the
> (lldb) prompt preceeded the stop reason and frame info output (leaving
> me with no prompt on the current line):
>
> joule% bin/lldb /bin/ls
> Current executable set to '/bin/ls' (x86_64).
> (lldb) b main
> Breakpoint 1: where = ls`main + 33 at ls.c:163, address = 0x00000000004023f1
> (lldb) run
> Process 13033 launching
> Process 13033 stopped
> Process 13033 launched: '/bin/ls' (x86_64)
> Process 13033 stopped
> * thread #1: tid = 100685, 0x00000000004023f1 ls`main(argc=1,
> argv=0x00007fffffffd760) + 33 at ls.c:163, stop reason = breakpoint
> 1.1
> frame #0: 0x00000000004023f1 ls`main(argc=1,
> argv=0x00007fffffffd760) + 33 at ls.c:163
> 160 #ifdef COLORLS
> 161 char termcapbuf[1024]; /* termcap definition buffer */
> 162 char tcapbuf[512]; /* capability buffer */
> -> 163 char *bp = tcapbuf;
> 164 #endif
> 165
> 166 (void)setlocale(LC_ALL, "");
> (lldb) step
> (lldb) Process 13033 stopped
> * thread #1: tid = 100685, 0x00000000004023fa ls`main(argc=1,
> argv=0x00007fffffffd760) + 42 at ls.c:166, stop reason = step in
> frame #0: 0x00000000004023fa ls`main(argc=1,
> argv=0x00007fffffffd760) + 42 at ls.c:166
> 163 char *bp = tcapbuf;
> 164 #endif
> 165
> -> 166 (void)setlocale(LC_ALL, "");
> 167
> 168 /* Terminal defaults to -Cq, non-terminal defaults to -1. */
> 169 if (isatty(STDOUT_FILENO)) {
More information about the lldb-commits
mailing list