From 91123da2d1ee7d4f09e3f62e59d33ddf8aa0b27e Mon Sep 17 00:00:00 2001 From: Caroline Tice Date: Wed, 8 Sep 2010 17:48:55 +0000 Subject: Make sure creating a pending instance doesn't also trigger creating a live instance; also make sure creating a pending instance uses the specified instance name rather than creating a new one; add brackets to instance names when searching for and removing pending instances. llvm-svn: 113370 --- lldb/source/Core/Debugger.cpp | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'lldb/source/Core/Debugger.cpp') diff --git a/lldb/source/Core/Debugger.cpp b/lldb/source/Core/Debugger.cpp index 08033d04ec6..fea9209af9b 100644 --- a/lldb/source/Core/Debugger.cpp +++ b/lldb/source/Core/Debugger.cpp @@ -565,7 +565,8 @@ Debugger::DebuggerSettingsController::DebuggerSettingsController () : UserSettingsController ("", lldb::UserSettingsControllerSP()), m_term_width (80) { - m_default_settings.reset (new DebuggerInstanceSettings (*this, InstanceSettings::GetDefaultName().AsCString())); + m_default_settings.reset (new DebuggerInstanceSettings (*this, false, + InstanceSettings::GetDefaultName().AsCString())); } Debugger::DebuggerSettingsController::~DebuggerSettingsController () @@ -574,9 +575,10 @@ Debugger::DebuggerSettingsController::~DebuggerSettingsController () lldb::InstanceSettingsSP -Debugger::DebuggerSettingsController::CreateNewInstanceSettings () +Debugger::DebuggerSettingsController::CreateNewInstanceSettings (const char *instance_name) { - DebuggerInstanceSettings *new_settings = new DebuggerInstanceSettings (*(Debugger::GetSettingsController().get())); + DebuggerInstanceSettings *new_settings = new DebuggerInstanceSettings (*(Debugger::GetSettingsController().get()), + false, instance_name); lldb::InstanceSettingsSP new_settings_sp (new_settings); return new_settings_sp; } @@ -626,12 +628,13 @@ Debugger::DebuggerSettingsController::ValidTermWidthValue (const char *value, Er // class DebuggerInstanceSettings //-------------------------------------------------- -DebuggerInstanceSettings::DebuggerInstanceSettings (UserSettingsController &owner, const char *name) : - InstanceSettings (owner, (name == NULL ? CreateInstanceName ().AsCString() : name)), +DebuggerInstanceSettings::DebuggerInstanceSettings (UserSettingsController &owner, bool live_instance, + const char *name) : + InstanceSettings (owner, (name == NULL ? CreateInstanceName ().AsCString() : name), live_instance), m_prompt (), m_script_lang () { - if (name == NULL) + if (name == NULL && live_instance) { const lldb::InstanceSettingsSP &pending_settings = m_owner.FindPendingSettings (m_instance_name); CopyInstanceSettings (pending_settings, false); -- cgit v1.2.3