Skip to content

Commit

Permalink
Make ProcessGDBRemote get a //copy// of platform Unix signals.
Browse files Browse the repository at this point in the history
Summary: Update to http://reviews.llvm.org/rL243618.

Reviewers: jaydeep, clayborg

Subscribers: labath, tberghammer, lldb-commits

Differential Revision: http://reviews.llvm.org/D12420

llvm-svn: 246557
  • Loading branch information
chaoren committed Sep 1, 2015
1 parent 0ca2508 commit c963a22
Show file tree
Hide file tree
Showing 5 changed files with 12 additions and 4 deletions.
2 changes: 1 addition & 1 deletion lldb/include/lldb/Target/Process.h
Expand Up @@ -1432,7 +1432,7 @@ class Process :
Signal (int signal);

void
SetUnixSignals(const lldb::UnixSignalsSP &signals_sp);
SetUnixSignals(lldb::UnixSignalsSP &&signals_sp);

const lldb::UnixSignalsSP &
GetUnixSignals();
Expand Down
3 changes: 1 addition & 2 deletions lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
Expand Up @@ -352,8 +352,7 @@ ProcessElfCore::Clear()
m_thread_list.Clear();
m_os = llvm::Triple::UnknownOS;

static const auto s_default_unix_signals_sp = std::make_shared<UnixSignals>();
SetUnixSignals(s_default_unix_signals_sp);
SetUnixSignals(std::make_shared<UnixSignals>());
}

void
Expand Down
6 changes: 6 additions & 0 deletions lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
Expand Up @@ -2904,6 +2904,12 @@ ProcessGDBRemote::SetLastStopPacket (const StringExtractorGDBRemote &response)
}
}

void
ProcessGDBRemote::SetUnixSignals(const UnixSignalsSP &signals_sp)
{
Process::SetUnixSignals(std::make_shared<GDBRemoteSignals>(signals_sp));
}

//------------------------------------------------------------------
// Process Queries
//------------------------------------------------------------------
Expand Down
3 changes: 3 additions & 0 deletions lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
Expand Up @@ -152,6 +152,9 @@ class ProcessGDBRemote : public Process
void
RefreshStateAfterStop() override;

void
SetUnixSignals(const lldb::UnixSignalsSP &signals_sp);

//------------------------------------------------------------------
// Process Queries
//------------------------------------------------------------------
Expand Down
2 changes: 1 addition & 1 deletion lldb/source/Target/Process.cpp
Expand Up @@ -4120,7 +4120,7 @@ Process::Signal (int signal)
}

void
Process::SetUnixSignals (const UnixSignalsSP &signals_sp)
Process::SetUnixSignals(UnixSignalsSP &&signals_sp)
{
assert (signals_sp && "null signals_sp");
m_unix_signals_sp = signals_sp;
Expand Down

0 comments on commit c963a22

Please sign in to comment.