llvm-project/lldb
Greg Clayton 577508df83 Command files that switch input handlers didn't work, now they do.
The issue was when we called Debugger::RunIOHandler(), it would run the current IOHandler by activating it, and running it and then try to pop it and exit regardless of wether it was on top or not.

The new code will push the IOHandler that was passed in, and run the IOHandlers until the one passed in is successfully popped. This allows files for the "command source" to switch input handlers:

% cat /tmp/commands
br s -S alignLeftEdges:
br command add
bt
frame var
po self
DONE
b s -n main
br command add
bt
frame var
DONE

Note above we set a breakpoint, then add commands do it. The "br command add" will push the breakpoint comment gatherer until it sees "DONE" and then pop itself off the stack. The a new breakpoint will be set and it does the same thing again.

Now this file can be sourced from the command line:

% lldb -s /tmp/commands /path/to/a.out

And your breakpoints will be correctly setup!

<rdar://problem/17081650>

llvm-svn: 211329
2014-06-20 00:23:57 +00:00
..
docs Add documentation about the jThreadExtendedInfo packet. 2014-06-13 22:40:47 +00:00
examples Allow classes to be intialized using current lldb::SB objects. This can help to import/export the current process state. 2014-05-28 00:21:15 +00:00
include Add a lock in the UnwindTable class so two Targets won't try 2014-06-18 23:32:53 +00:00
lib Attempt to fix the build 2014-04-25 09:49:32 +00:00
lldb.xcodeproj Initial merge of some of the iOS 8 / Mac OS X Yosemite specific 2014-06-13 02:37:02 +00:00
lldb.xcworkspace Move the performance test cases into their own project. 2013-03-18 23:05:00 +00:00
resources Update the lldb version number in the xcode project files from 310.99.0 to 320.99.0. 2014-01-10 06:12:10 +00:00
scripts [cmake] Switch python install to use an 'install(DIRECTORY...)' cmake 2014-06-16 15:02:21 +00:00
source Command files that switch input handlers didn't work, now they do. 2014-06-20 00:23:57 +00:00
test Fixed up gdb-remote auxv regex issues with binary data. 2014-06-19 17:35:40 +00:00
tools Add an option for debugserver to propagate its environment to programs it launches using the --forward-env or -F: 2014-06-18 18:26:50 +00:00
utils LUI: Fix some issues causing crashes in the source view 2013-10-23 01:18:21 +00:00
www Remove obsolete CXX11 buld instructions 2014-05-03 15:05:40 +00:00
.arcconfig Update .arcconfig to point to reviews.llvm.org 2014-05-20 21:24:59 +00:00
.gitignore spruce up .gitignore 2014-03-18 04:43:49 +00:00
CMakeLists.txt Fix up lldb cmake linker flags for MacOSX. 2014-06-17 20:54:56 +00:00
INSTALL.txt Update INSTALL.txt to mention LLDB builds on Linux with GCC or Clang. 2013-02-21 22:37:18 +00:00
LICENSE.TXT
Makefile Add some missing defines that are already present in the cmake side. 2014-03-12 10:35:00 +00:00