[Lldb-commits] [lldb] r177200 - Convert the -a option in "image lookup" to a address-expression, and pass the context
Jim Ingham
jingham at apple.com
Fri Mar 15 16:09:20 PDT 2013
Author: jingham
Date: Fri Mar 15 18:09:19 2013
New Revision: 177200
URL: http://llvm.org/viewvc/llvm-project?rev=177200&view=rev
Log:
Convert the -a option in "image lookup" to a address-expression, and pass the context
in the -a address expression lookup in "image list" so that it actually works.
Modified:
lldb/trunk/source/Commands/CommandObjectTarget.cpp
Modified: lldb/trunk/source/Commands/CommandObjectTarget.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectTarget.cpp?rev=177200&r1=177199&r2=177200&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectTarget.cpp (original)
+++ lldb/trunk/source/Commands/CommandObjectTarget.cpp Fri Mar 15 18:09:19 2013
@@ -3038,7 +3038,8 @@ public:
}
else if (short_option == 'a')
{
- m_module_addr = Args::StringToAddress(NULL, option_arg, LLDB_INVALID_ADDRESS, &error);
+ ExecutionContext exe_ctx (m_interpreter.GetExecutionContext());
+ m_module_addr = Args::StringToAddress(&exe_ctx, option_arg, LLDB_INVALID_ADDRESS, &error);
}
else
{
@@ -3713,10 +3714,11 @@ public:
switch (short_option)
{
case 'a':
- m_type = eLookupTypeAddress;
- m_addr = Args::StringToUInt64(option_arg, LLDB_INVALID_ADDRESS);
- if (m_addr == LLDB_INVALID_ADDRESS)
- error.SetErrorStringWithFormat ("invalid address string '%s'", option_arg);
+ {
+ m_type = eLookupTypeAddress;
+ ExecutionContext exe_ctx (m_interpreter.GetExecutionContext());
+ m_addr = Args::StringToAddress(&exe_ctx, option_arg, LLDB_INVALID_ADDRESS, &error);
+ }
break;
case 'o':
@@ -4107,7 +4109,7 @@ protected:
OptionDefinition
CommandObjectTargetModulesLookup::CommandOptions::g_option_table[] =
{
- { LLDB_OPT_SET_1, true, "address", 'a', required_argument, NULL, 0, eArgTypeAddress, "Lookup an address in one or more target modules."},
+ { LLDB_OPT_SET_1, true, "address", 'a', required_argument, NULL, 0, eArgTypeAddressOrExpression, "Lookup an address in one or more target modules."},
{ LLDB_OPT_SET_1, false, "offset", 'o', required_argument, NULL, 0, eArgTypeOffset, "When looking up an address subtract <offset> from any addresses before doing the lookup."},
{ LLDB_OPT_SET_2| LLDB_OPT_SET_4 | LLDB_OPT_SET_5
/* FIXME: re-enable this for types when the LookupTypeInModule actually uses the regex option: | LLDB_OPT_SET_6 */ ,
More information about the lldb-commits
mailing list