Author: Med Ismail Bennani Date: 2023-04-19T10:46:33-07:00 New Revision: f2f37557e722a4d41378bd53c119ee89cb3ec93d
URL: https://github.com/llvm/llvm-project/commit/f2f37557e722a4d41378bd53c119ee89cb3ec93d DIFF: https://github.com/llvm/llvm-project/commit/f2f37557e722a4d41378bd53c119ee89cb3ec93d.diff LOG: Revert "[lldb] Fix bug to update process public run lock with process state" This reverts commit 14f00213b202a82b895a6ab749262d4382435012. Added: Modified: lldb/include/lldb/Target/Process.h lldb/source/Target/Process.cpp lldb/source/Target/Target.cpp Removed: ################################################################################ diff --git a/lldb/include/lldb/Target/Process.h b/lldb/include/lldb/Target/Process.h index 0c90078accfcb..255ba8cd4a923 100644 --- a/lldb/include/lldb/Target/Process.h +++ b/lldb/include/lldb/Target/Process.h @@ -386,13 +386,6 @@ class Process : public std::enable_shared_from_this<Process>, static ConstString &GetStaticBroadcasterClass(); - static constexpr llvm::StringRef AttachSynchronousHijackListenerName = - "lldb.internal.Process.AttachSynchronous.hijack"; - static constexpr llvm::StringRef LaunchSynchronousHijackListenerName = - "lldb.internal.Process.LaunchSynchronous.hijack"; - static constexpr llvm::StringRef ResumeSynchronousHijackListenerName = - "lldb.internal.Process.ResumeSynchronous.hijack"; - ConstString &GetBroadcasterClass() const override { return GetStaticBroadcasterClass(); } diff --git a/lldb/source/Target/Process.cpp b/lldb/source/Target/Process.cpp index ff28d02891cca..af5b0d0920102 100644 --- a/lldb/source/Target/Process.cpp +++ b/lldb/source/Target/Process.cpp @@ -1355,6 +1355,8 @@ Status Process::Resume() { return error; } +static const char *g_resume_sync_name = "lldb.Process.ResumeSynchronous.hijack"; + Status Process::ResumeSynchronous(Stream *stream) { Log *log(GetLog(LLDBLog::State | LLDBLog::Process)); LLDB_LOGF(log, "Process::ResumeSynchronous -- locking run lock"); @@ -1365,7 +1367,7 @@ Status Process::ResumeSynchronous(Stream *stream) { } ListenerSP listener_sp( - Listener::MakeListener(ResumeSynchronousHijackListenerName.data())); + Listener::MakeListener(g_resume_sync_name)); HijackProcessEvents(listener_sp); Status error = PrivateResume(); @@ -1391,8 +1393,9 @@ Status Process::ResumeSynchronous(Stream *stream) { bool Process::StateChangedIsExternallyHijacked() { if (IsHijackedForEvent(eBroadcastBitStateChanged)) { - llvm::StringRef hijacking_name = GetHijackingListenerName(); - if (hijacking_name.starts_with("lldb.internal")) + const char *hijacking_name = GetHijackingListenerName(); + if (hijacking_name && + strcmp(hijacking_name, g_resume_sync_name)) return true; } return false; @@ -1400,8 +1403,9 @@ bool Process::StateChangedIsExternallyHijacked() { bool Process::StateChangedIsHijackedForSynchronousResume() { if (IsHijackedForEvent(eBroadcastBitStateChanged)) { - llvm::StringRef hijacking_name = GetHijackingListenerName(); - if (hijacking_name == ResumeSynchronousHijackListenerName) + const char *hijacking_name = GetHijackingListenerName(); + if (hijacking_name && + strcmp(hijacking_name, g_resume_sync_name) == 0) return true; } return false; diff --git a/lldb/source/Target/Target.cpp b/lldb/source/Target/Target.cpp index 03379796a4e51..a6e6f21001625 100644 --- a/lldb/source/Target/Target.cpp +++ b/lldb/source/Target/Target.cpp @@ -3157,8 +3157,8 @@ Status Target::Launch(ProcessLaunchInfo &launch_info, Stream *stream) { // its own hijacking listener or if the process is created by the target // manually, without the platform). if (!launch_info.GetHijackListener()) - launch_info.SetHijackListener(Listener::MakeListener( - Process::LaunchSynchronousHijackListenerName.data())); + launch_info.SetHijackListener( + Listener::MakeListener("lldb.Target.Launch.hijack")); // If we're not already connected to the process, and if we have a platform // that can launch a process for debugging, go ahead and do that here. @@ -3334,8 +3334,8 @@ Status Target::Attach(ProcessAttachInfo &attach_info, Stream *stream) { ListenerSP hijack_listener_sp; const bool async = attach_info.GetAsync(); if (!async) { - hijack_listener_sp = Listener::MakeListener( - Process::AttachSynchronousHijackListenerName.data()); + hijack_listener_sp = + Listener::MakeListener("lldb.Target.Attach.attach.hijack"); attach_info.SetHijackListener(hijack_listener_sp); } _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits