diff options
| author | Jim Ingham <jingham@apple.com> | 2010-06-19 04:35:20 +0000 |
|---|---|---|
| committer | Jim Ingham <jingham@apple.com> | 2010-06-19 04:35:20 +0000 |
| commit | b2a38a7286d20a4c6cf20820a0cfe9a1d30df93e (patch) | |
| tree | e1b7ad7bc2ebf8664980ab1210d0bbf7d3df5802 /lldb/source/Commands/CommandObjectBreakpoint.cpp | |
| parent | 60a234f07954e6a0794db4db9d988054fbc88158 (diff) | |
| download | llvm-b2a38a7286d20a4c6cf20820a0cfe9a1d30df93e.zip llvm-b2a38a7286d20a4c6cf20820a0cfe9a1d30df93e.tar.gz llvm-b2a38a7286d20a4c6cf20820a0cfe9a1d30df93e.tar.bz2 | |
Remember whether a queue or thread name were passed into "breakpoint modify" so we can recognize an empty argument as unsetting the option.
llvm-svn: 106377
Diffstat (limited to 'lldb/source/Commands/CommandObjectBreakpoint.cpp')
| -rw-r--r-- | lldb/source/Commands/CommandObjectBreakpoint.cpp | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/lldb/source/Commands/CommandObjectBreakpoint.cpp b/lldb/source/Commands/CommandObjectBreakpoint.cpp index bbefb2c..044ff40 100644 --- a/lldb/source/Commands/CommandObjectBreakpoint.cpp +++ b/lldb/source/Commands/CommandObjectBreakpoint.cpp @@ -1095,10 +1095,18 @@ CommandObjectBreakpointModify::CommandOptions::SetOptionValue (int option_idx, c } break; case 'T': - m_thread_name = option_arg; + if (option_arg != NULL) + m_thread_name = option_arg; + else + m_thread_name.clear(); + m_name_passed = true; break; case 'q': - m_queue_name = option_arg; + if (option_arg != NULL) + m_queue_name = option_arg; + else + m_queue_name.clear(); + m_queue_passed = true; break; case 'x': { @@ -1127,6 +1135,8 @@ CommandObjectBreakpointModify::CommandOptions::ResetOptionValues () m_thread_name.clear(); m_queue_name.clear(); m_enable_passed = false; + m_queue_passed = false; + m_name_passed = false; } //------------------------------------------------------------------------- @@ -1201,10 +1211,10 @@ CommandObjectBreakpointModify::Execute if (m_options.m_thread_index != -1) location->GetLocationOptions()->GetThreadSpec()->SetIndex(m_options.m_thread_index); - if (!m_options.m_thread_name.empty()) + if (m_options.m_name_passed) location->GetLocationOptions()->GetThreadSpec()->SetName(m_options.m_thread_name.c_str()); - if (!m_options.m_queue_name.empty()) + if (m_options.m_queue_passed) location->GetLocationOptions()->GetThreadSpec()->SetQueueName(m_options.m_queue_name.c_str()); if (m_options.m_ignore_count != -1) @@ -1222,10 +1232,10 @@ CommandObjectBreakpointModify::Execute if (m_options.m_thread_index != -1) bp->GetOptions()->GetThreadSpec()->SetIndex(m_options.m_thread_index); - if (!m_options.m_thread_name.empty()) + if (m_options.m_name_passed) bp->GetOptions()->GetThreadSpec()->SetName(m_options.m_thread_name.c_str()); - if (!m_options.m_queue_name.empty()) + if (m_options.m_queue_passed) bp->GetOptions()->GetThreadSpec()->SetQueueName(m_options.m_queue_name.c_str()); if (m_options.m_ignore_count != -1) |
