Skip to content

Commit c963a22

Browse files
committed
Make ProcessGDBRemote get a //copy// of platform Unix signals.
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
1 parent 0ca2508 commit c963a22

File tree

5 files changed

+12
-4
lines changed

5 files changed

+12
-4
lines changed

lldb/include/lldb/Target/Process.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1432,7 +1432,7 @@ class Process :
14321432
Signal (int signal);
14331433

14341434
void
1435-
SetUnixSignals(const lldb::UnixSignalsSP &signals_sp);
1435+
SetUnixSignals(lldb::UnixSignalsSP &&signals_sp);
14361436

14371437
const lldb::UnixSignalsSP &
14381438
GetUnixSignals();

lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -352,8 +352,7 @@ ProcessElfCore::Clear()
352352
m_thread_list.Clear();
353353
m_os = llvm::Triple::UnknownOS;
354354

355-
static const auto s_default_unix_signals_sp = std::make_shared<UnixSignals>();
356-
SetUnixSignals(s_default_unix_signals_sp);
355+
SetUnixSignals(std::make_shared<UnixSignals>());
357356
}
358357

359358
void

lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2904,6 +2904,12 @@ ProcessGDBRemote::SetLastStopPacket (const StringExtractorGDBRemote &response)
29042904
}
29052905
}
29062906

2907+
void
2908+
ProcessGDBRemote::SetUnixSignals(const UnixSignalsSP &signals_sp)
2909+
{
2910+
Process::SetUnixSignals(std::make_shared<GDBRemoteSignals>(signals_sp));
2911+
}
2912+
29072913
//------------------------------------------------------------------
29082914
// Process Queries
29092915
//------------------------------------------------------------------

lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -152,6 +152,9 @@ class ProcessGDBRemote : public Process
152152
void
153153
RefreshStateAfterStop() override;
154154

155+
void
156+
SetUnixSignals(const lldb::UnixSignalsSP &signals_sp);
157+
155158
//------------------------------------------------------------------
156159
// Process Queries
157160
//------------------------------------------------------------------

lldb/source/Target/Process.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4120,7 +4120,7 @@ Process::Signal (int signal)
41204120
}
41214121

41224122
void
4123-
Process::SetUnixSignals (const UnixSignalsSP &signals_sp)
4123+
Process::SetUnixSignals(UnixSignalsSP &&signals_sp)
41244124
{
41254125
assert (signals_sp && "null signals_sp");
41264126
m_unix_signals_sp = signals_sp;

0 commit comments

Comments
 (0)