aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/Process/scripted/ScriptedProcess.h
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Plugins/Process/scripted/ScriptedProcess.h')
-rw-r--r--lldb/source/Plugins/Process/scripted/ScriptedProcess.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/lldb/source/Plugins/Process/scripted/ScriptedProcess.h b/lldb/source/Plugins/Process/scripted/ScriptedProcess.h
index 24b5a31..0335364 100644
--- a/lldb/source/Plugins/Process/scripted/ScriptedProcess.h
+++ b/lldb/source/Plugins/Process/scripted/ScriptedProcess.h
@@ -12,6 +12,7 @@
#include "lldb/Target/Process.h"
#include "lldb/Utility/ConstString.h"
#include "lldb/Utility/ScriptedMetadata.h"
+#include "lldb/Utility/State.h"
#include "lldb/Utility/Status.h"
#include "ScriptedThread.h"
@@ -93,6 +94,11 @@ public:
void *GetImplementation() override;
void ForceScriptedState(lldb::StateType state) override {
+ // If we're about to stop, we should fetch the loaded dynamic libraries
+ // dictionary before emitting the private stop event to avoid having the
+ // module loading happen while the process state is changing.
+ if (StateIsStoppedState(state, true))
+ GetLoadedDynamicLibrariesInfos();
SetPrivateState(state);
}