[Lldb-commits] [lldb] r113268 - in /lldb/trunk: include/lldb/Core/UserSettingsController.h source/Core/Debugger.cpp source/Core/UserSettingsController.cpp source/Target/Process.cpp

Jim Ingham jingham at apple.com
Tue Sep 7 13:27:09 PDT 2010


Author: jingham
Date: Tue Sep  7 15:27:09 2010
New Revision: 113268

URL: http://llvm.org/viewvc/llvm-project?rev=113268&view=rev
Log:
Move common code from GetSettingsController in Process & Debugger into static functions
in UserSettingsController.cpp.


Modified:
    lldb/trunk/include/lldb/Core/UserSettingsController.h
    lldb/trunk/source/Core/Debugger.cpp
    lldb/trunk/source/Core/UserSettingsController.cpp
    lldb/trunk/source/Target/Process.cpp

Modified: lldb/trunk/include/lldb/Core/UserSettingsController.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Core/UserSettingsController.h?rev=113268&r1=113267&r2=113268&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Core/UserSettingsController.h (original)
+++ lldb/trunk/include/lldb/Core/UserSettingsController.h Tue Sep  7 15:27:09 2010
@@ -196,6 +196,15 @@
                         const char *new_value,
                         Error &err);
 
+    static bool
+    InitializeSettingsController (lldb::UserSettingsControllerSP &controller_sp,
+                                  SettingEntry *global_settings,
+                                  SettingEntry *instance_settings);
+
+    static void
+    FinalizeSettingsController (lldb::UserSettingsControllerSP &controller_sp);
+
+
 protected:
 
     // -------------------------------------------------------------------------

Modified: lldb/trunk/source/Core/Debugger.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Core/Debugger.cpp?rev=113268&r1=113267&r2=113268&view=diff
==============================================================================
--- lldb/trunk/source/Core/Debugger.cpp (original)
+++ lldb/trunk/source/Core/Debugger.cpp Tue Sep  7 15:27:09 2010
@@ -542,18 +542,9 @@
 
     if (!initialized)
     {
-        UserSettingsControllerSP parent = g_settings_controller->GetParent();
-        if (parent)
-            parent->RegisterChild (g_settings_controller);
-
-        g_settings_controller->CreateSettingsVector (Debugger::DebuggerSettingsController::global_settings_table, 
-                                                     true);
-        g_settings_controller->CreateSettingsVector (Debugger::DebuggerSettingsController::instance_settings_table,
-                                                     false);
-
-	g_settings_controller->InitializeGlobalVariables ();
-        g_settings_controller->CreateDefaultInstanceSettings ();
-	initialized = true;
+        initialized = UserSettingsController::InitializeSettingsController (g_settings_controller,
+                                                             Debugger::DebuggerSettingsController::global_settings_table,
+                                                             Debugger::DebuggerSettingsController::instance_settings_table);
     }
 
     if (finish)

Modified: lldb/trunk/source/Core/UserSettingsController.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Core/UserSettingsController.cpp?rev=113268&r1=113267&r2=113268&view=diff
==============================================================================
--- lldb/trunk/source/Core/UserSettingsController.cpp (original)
+++ lldb/trunk/source/Core/UserSettingsController.cpp Tue Sep  7 15:27:09 2010
@@ -38,6 +38,32 @@
     m_live_settings.clear();
 }
 
+bool
+UserSettingsController::InitializeSettingsController (lldb::UserSettingsControllerSP &controller_sp,
+                                                      SettingEntry *global_settings,
+                                                      SettingEntry *instance_settings)
+{
+    const lldb::UserSettingsControllerSP &parent = controller_sp->GetParent ();
+    if (parent)
+    parent->RegisterChild (controller_sp);
+
+	controller_sp->CreateSettingsVector (global_settings, true);
+	controller_sp->CreateSettingsVector (instance_settings, false);
+
+	controller_sp->InitializeGlobalVariables ();
+    controller_sp->CreateDefaultInstanceSettings ();
+
+    return true;
+}
+
+void
+UserSettingsController::FinalizeSettingsController (lldb::UserSettingsControllerSP &controller_sp)
+{
+    const lldb::UserSettingsControllerSP &parent = controller_sp->GetParent ();
+    if (parent)
+        parent->RemoveChild (controller_sp);
+}
+
 void
 UserSettingsController::InitializeGlobalVariables ()
 {

Modified: lldb/trunk/source/Target/Process.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Target/Process.cpp?rev=113268&r1=113267&r2=113268&view=diff
==============================================================================
--- lldb/trunk/source/Target/Process.cpp (original)
+++ lldb/trunk/source/Target/Process.cpp Tue Sep  7 15:27:09 2010
@@ -1929,26 +1929,16 @@
 
     if (!initialized)
     {
-        const lldb::UserSettingsControllerSP &parent = g_settings_controller->GetParent ();
-        if (parent)
-	    parent->RegisterChild (g_settings_controller);
-
-	g_settings_controller->CreateSettingsVector (Process::ProcessSettingsController::global_settings_table,
-                                                     true);
-	g_settings_controller->CreateSettingsVector (Process::ProcessSettingsController::instance_settings_table,
-                                                     false);
-
-	g_settings_controller->InitializeGlobalVariables ();
-        g_settings_controller->CreateDefaultInstanceSettings ();
-	initialized = true;
+        initialized = UserSettingsController::InitializeSettingsController (g_settings_controller,
+                                                             Process::ProcessSettingsController::global_settings_table,
+                                                             Process::ProcessSettingsController::instance_settings_table);
     }
 
     if (finish)
     {
-        const lldb::UserSettingsControllerSP &parent = g_settings_controller->GetParent ();
-        if (parent)
-            parent->RemoveChild (g_settings_controller);
+        UserSettingsController::FinalizeSettingsController (g_settings_controller);
         g_settings_controller.reset();
+        initialized = false;
     }
 
     return g_settings_controller;





More information about the lldb-commits mailing list