diff options
author | Filipe Cabecinhas <me@filcab.net> | 2012-08-25 00:29:07 +0000 |
---|---|---|
committer | Filipe Cabecinhas <me@filcab.net> | 2012-08-25 00:29:07 +0000 |
commit | c5041918dda38fbb480ce73da2784ae4765171d3 (patch) | |
tree | ea75625abea7c97cddbbd150967d006b50dbb230 /lldb/scripts/Python/interface/SBDebugger.i | |
parent | de70e0ef454ce294b5526815e8ce657aa6806bff (diff) | |
download | bcm5719-llvm-c5041918dda38fbb480ce73da2784ae4765171d3.tar.gz bcm5719-llvm-c5041918dda38fbb480ce73da2784ae4765171d3.zip |
Added SBDebugger's log callbacks to Python-land
- Tweaked a parameter name in SBDebugger.h so my typemap will catch it;
- Added a SBDebugger.Create(bool, callback, baton) to the swig interface;
- Added SBDebugger.SetLoggingCallback to the swig interface;
- Added a callback utility function for log callbacks;
- Guard against Py_None on both callback utility functions;
- Added a FIXME to the SBDebugger API test;
- Added a __del__() stub for SBDebugger.
We need to be able to get both the log callback and baton from an
SBDebugger if we want to protect against memory leaks (or make the user
responsible for holding another reference to the callback).
Additionally, it's impossible to revert from a callback-backed log
mechanism to a file-backed log mechanism.
llvm-svn: 162633
Diffstat (limited to 'lldb/scripts/Python/interface/SBDebugger.i')
-rw-r--r-- | lldb/scripts/Python/interface/SBDebugger.i | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/lldb/scripts/Python/interface/SBDebugger.i b/lldb/scripts/Python/interface/SBDebugger.i index 883ed1c5fb5..a27d280de7e 100644 --- a/lldb/scripts/Python/interface/SBDebugger.i +++ b/lldb/scripts/Python/interface/SBDebugger.i @@ -122,6 +122,9 @@ public: static lldb::SBDebugger Create(bool source_init_files); + static lldb::SBDebugger + Create(bool source_init_files, lldb::LogOutputCallback log_callback, void *baton); + static void Destroy (lldb::SBDebugger &debugger); @@ -272,6 +275,9 @@ public: EnableLog (const char *channel, const char ** types); void + SetLoggingCallback (lldb::LogOutputCallback log_callback, void *baton); + + void DispatchInput (const void *data, size_t data_len); void |