summaryrefslogtreecommitdiffstats
path: root/lldb/source/Target/Process.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Target/Process.cpp')
-rw-r--r--lldb/source/Target/Process.cpp37
1 files changed, 20 insertions, 17 deletions
diff --git a/lldb/source/Target/Process.cpp b/lldb/source/Target/Process.cpp
index a86a4e10187..0a758f6d5e2 100644
--- a/lldb/source/Target/Process.cpp
+++ b/lldb/source/Target/Process.cpp
@@ -2237,26 +2237,29 @@ Process::PopProcessInputReader ()
m_target.GetDebugger().PopInputReader (m_process_input_reader);
}
-lldb::UserSettingsControllerSP
-Process::GetSettingsController (bool finish)
-{
- static UserSettingsControllerSP g_settings_controller (new SettingsController);
- static bool initialized = false;
- if (!initialized)
- {
- initialized = UserSettingsController::InitializeSettingsController (g_settings_controller,
- Process::SettingsController::global_settings_table,
- Process::SettingsController::instance_settings_table);
- }
+void
+Process::Initialize ()
+{
+ UserSettingsControllerSP &usc = GetSettingsController();
+ usc.reset (new SettingsController);
+ UserSettingsController::InitializeSettingsController (usc,
+ SettingsController::global_settings_table,
+ SettingsController::instance_settings_table);
+}
- if (finish)
- {
- UserSettingsController::FinalizeSettingsController (g_settings_controller);
- g_settings_controller.reset();
- initialized = false;
- }
+void
+Process::Terminate ()
+{
+ UserSettingsControllerSP &usc = GetSettingsController();
+ UserSettingsController::FinalizeSettingsController (usc);
+ usc.reset();
+}
+UserSettingsControllerSP &
+Process::GetSettingsController ()
+{
+ static UserSettingsControllerSP g_settings_controller;
return g_settings_controller;
}
OpenPOWER on IntegriCloud