Author: Slava Gurevich Date: 2022-08-17T12:20:10-07:00 New Revision: 163319070947a51beed9d3773bf53d3d48120db8
URL: https://github.com/llvm/llvm-project/commit/163319070947a51beed9d3773bf53d3d48120db8 DIFF: https://github.com/llvm/llvm-project/commit/163319070947a51beed9d3773bf53d3d48120db8.diff LOG: [LLDB][NFC] Fix optons parsing and misc. reliability in CommandObjectThread * Fix broken option parsing in SetOptionValue() Differential Revision: https://reviews.llvm.org/D131983 Added: Modified: lldb/source/Commands/CommandObjectThread.cpp Removed: ################################################################################ diff --git a/lldb/source/Commands/CommandObjectThread.cpp b/lldb/source/Commands/CommandObjectThread.cpp index 5d7f3c16f3894..7b739fef0a7a4 100644 --- a/lldb/source/Commands/CommandObjectThread.cpp +++ b/lldb/source/Commands/CommandObjectThread.cpp @@ -62,15 +62,13 @@ class CommandObjectThreadBacktrace : public CommandObjectIterateOverThreads { const int short_option = m_getopt_table[option_idx].val; switch (short_option) { - case 'c': { - int32_t input_count = 0; - if (option_arg.getAsInteger(0, m_count)) { + case 'c': + if (option_arg.getAsInteger(0, m_count) || (m_count < 0)) { m_count = UINT32_MAX; error.SetErrorStringWithFormat( "invalid integer value for option '%c'", short_option); - } else if (input_count < 0) - m_count = UINT32_MAX; - } break; + } + break; case 's': if (option_arg.getAsInteger(0, m_start)) error.SetErrorStringWithFormat( @@ -991,7 +989,7 @@ class CommandObjectThreadUntil : public CommandObjectParsed { } LineEntry function_start; - uint32_t index_ptr = 0, end_ptr; + uint32_t index_ptr = 0, end_ptr = UINT32_MAX; std::vector<addr_t> address_list; // Find the beginning & end index of the function, but first make _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits