Only require thread scope when we're about to run the function on a thread.

llvm-svn: 202740
This commit is contained in:
Jim Ingham 2014-03-03 19:16:45 +00:00
parent c451b43607
commit 8225d59b3f
1 changed files with 6 additions and 6 deletions

View File

@ -763,12 +763,6 @@ ClangUserExpression::Execute (Stream &error_stream,
// expression, it's quite convenient to have these logs come out with the STEP log as well.
Log *log(lldb_private::GetLogIfAnyCategoriesSet (LIBLLDB_LOG_EXPRESSIONS | LIBLLDB_LOG_STEP));
if (!exe_ctx.HasThreadScope() && !m_can_interpret)
{
error_stream.Printf("ClangUserExpression::Execute called with no thread selected.");
return eExecutionSetupError;
}
if (m_jit_start_addr != LLDB_INVALID_ADDRESS || m_can_interpret)
{
lldb::addr_t struct_address = LLDB_INVALID_ADDRESS;
@ -829,6 +823,12 @@ ClangUserExpression::Execute (Stream &error_stream,
}
else
{
if (!exe_ctx.HasThreadScope())
{
error_stream.Printf("ClangUserExpression::Execute called with no thread selected.");
return eExecutionSetupError;
}
Address wrapper_address (m_jit_start_addr);
llvm::SmallVector <lldb::addr_t, 3> args;