Don't go to the trouble of trying to figure out the implementation function for selectors sent

to nil objects, it won't work anyway.

llvm-svn: 184474
This commit is contained in:
Jim Ingham 2013-06-20 21:36:52 +00:00
parent dba725c0be
commit c575a37ac9
1 changed files with 8 additions and 0 deletions

View File

@ -917,6 +917,14 @@ AppleObjCTrampolineHandler::GetStepThroughDispatchPlan (Thread &thread, bool sto
bool success = abi->GetArgumentValues (thread, argument_values);
if (!success)
return ret_plan_sp;
lldb::addr_t obj_addr = argument_values.GetValueAtIndex(obj_index)->GetScalar().ULongLong();
if (obj_addr == 0x0)
{
if (log)
log->Printf("Asked to step to dispatch to nil object, returning empty plan.");
return ret_plan_sp;
}
ExecutionContext exe_ctx (thread.shared_from_this());
Process *process = exe_ctx.GetProcessPtr();