[Lldb-commits] [lldb] r282269 - Update the prompt related functions to use StringRefs.
Zachary Turner via lldb-commits
lldb-commits at lists.llvm.org
Fri Sep 23 11:06:54 PDT 2016
Author: zturner
Date: Fri Sep 23 13:06:53 2016
New Revision: 282269
URL: http://llvm.org/viewvc/llvm-project?rev=282269&view=rev
Log:
Update the prompt related functions to use StringRefs.
Modified:
lldb/trunk/include/lldb/Core/Debugger.h
lldb/trunk/include/lldb/Core/Event.h
lldb/trunk/include/lldb/Core/IOHandler.h
lldb/trunk/include/lldb/Core/Log.h
lldb/trunk/include/lldb/Interpreter/CommandInterpreter.h
lldb/trunk/include/lldb/Interpreter/OptionValue.h
lldb/trunk/include/lldb/Interpreter/OptionValueProperties.h
lldb/trunk/include/lldb/Utility/AnsiTerminal.h
lldb/trunk/source/API/SBDebugger.cpp
lldb/trunk/source/Commands/CommandObjectCommands.cpp
lldb/trunk/source/Commands/CommandObjectExpression.cpp
lldb/trunk/source/Core/Debugger.cpp
lldb/trunk/source/Core/Event.cpp
lldb/trunk/source/Core/IOHandler.cpp
lldb/trunk/source/Expression/REPL.cpp
lldb/trunk/source/Interpreter/CommandInterpreter.cpp
lldb/trunk/source/Interpreter/OptionValue.cpp
lldb/trunk/source/Interpreter/OptionValueProperties.cpp
lldb/trunk/source/Target/Target.cpp
Modified: lldb/trunk/include/lldb/Core/Debugger.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Core/Debugger.h?rev=282269&r1=282268&r2=282269&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Core/Debugger.h (original)
+++ lldb/trunk/include/lldb/Core/Debugger.h Fri Sep 23 13:06:53 2016
@@ -226,9 +226,10 @@ public:
bool SetTerminalWidth(uint32_t term_width);
- const char *GetPrompt() const;
+ llvm::StringRef GetPrompt() const;
- void SetPrompt(const char *p);
+ void SetPrompt(llvm::StringRef p);
+ void SetPrompt(const char *) = delete;
bool GetUseExternalEditor() const;
Modified: lldb/trunk/include/lldb/Core/Event.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Core/Event.h?rev=282269&r1=282268&r2=282269&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Core/Event.h (original)
+++ lldb/trunk/include/lldb/Core/Event.h Fri Sep 23 13:06:53 2016
@@ -59,6 +59,8 @@ public:
EventDataBytes(const char *cstr);
+ EventDataBytes(llvm::StringRef str);
+
EventDataBytes(const void *src, size_t src_len);
~EventDataBytes() override;
Modified: lldb/trunk/include/lldb/Core/IOHandler.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Core/IOHandler.h?rev=282269&r1=282268&r2=282269&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Core/IOHandler.h (original)
+++ lldb/trunk/include/lldb/Core/IOHandler.h Fri Sep 23 13:06:53 2016
@@ -97,10 +97,11 @@ public:
return nullptr;
}
- virtual bool SetPrompt(const char *prompt) {
+ virtual bool SetPrompt(llvm::StringRef prompt) {
// Prompt support isn't mandatory
return false;
}
+ bool SetPrompt(const char *) = delete;
virtual ConstString GetControlSequence(char ch) { return ConstString(); }
@@ -341,7 +342,7 @@ class IOHandlerEditline : public IOHandl
public:
IOHandlerEditline(Debugger &debugger, IOHandler::Type type,
const char *editline_name, // Used for saving history files
- const char *prompt, const char *continuation_prompt,
+ llvm::StringRef prompt, llvm::StringRef continuation_prompt,
bool multi_line, bool color_prompts,
uint32_t line_number_start, // If non-zero show line numbers
// starting at
@@ -353,13 +354,22 @@ public:
const lldb::StreamFileSP &output_sp,
const lldb::StreamFileSP &error_sp, uint32_t flags,
const char *editline_name, // Used for saving history files
- const char *prompt, const char *continuation_prompt,
+ llvm::StringRef prompt, llvm::StringRef continuation_prompt,
bool multi_line, bool color_prompts,
uint32_t line_number_start, // If non-zero show line numbers
// starting at
// 'line_number_start'
IOHandlerDelegate &delegate);
+ IOHandlerEditline(Debugger &, IOHandler::Type, const char *, const char *,
+ const char *, bool, bool, uint32_t,
+ IOHandlerDelegate &) = delete;
+
+ IOHandlerEditline(Debugger &, IOHandler::Type, const lldb::StreamFileSP &,
+ const lldb::StreamFileSP &, const lldb::StreamFileSP &,
+ uint32_t, const char *, const char *, const char *, bool,
+ bool, uint32_t, IOHandlerDelegate &) = delete;
+
~IOHandlerEditline() override;
void Run() override;
@@ -388,11 +398,13 @@ public:
const char *GetPrompt() override;
- bool SetPrompt(const char *prompt) override;
+ bool SetPrompt(llvm::StringRef prompt) override;
+ bool SetPrompt(const char *prompt) = delete;
const char *GetContinuationPrompt();
- void SetContinuationPrompt(const char *prompt);
+ void SetContinuationPrompt(llvm::StringRef prompt);
+ void SetContinuationPrompt(const char *) = delete;
bool GetLine(std::string &line, bool &interrupted);
Modified: lldb/trunk/include/lldb/Core/Log.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Core/Log.h?rev=282269&r1=282268&r2=282269&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Core/Log.h (original)
+++ lldb/trunk/include/lldb/Core/Log.h Fri Sep 23 13:06:53 2016
@@ -106,6 +106,7 @@ public:
virtual void PutCString(const char *cstr);
+ // CLEANUP: Add llvm::raw_ostream &Stream() function.
virtual void Printf(const char *format, ...)
__attribute__((format(printf, 2, 3)));
Modified: lldb/trunk/include/lldb/Interpreter/CommandInterpreter.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Interpreter/CommandInterpreter.h?rev=282269&r1=282268&r2=282269&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Interpreter/CommandInterpreter.h (original)
+++ lldb/trunk/include/lldb/Interpreter/CommandInterpreter.h Fri Sep 23 13:06:53 2016
@@ -372,7 +372,8 @@ public:
const char *ProcessEmbeddedScriptCommands(const char *arg);
- void UpdatePrompt(const char *);
+ void UpdatePrompt(llvm::StringRef prompt);
+ void UpdatePrompt(const char *) = delete;
bool Confirm(const char *message, bool default_answer);
Modified: lldb/trunk/include/lldb/Interpreter/OptionValue.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Interpreter/OptionValue.h?rev=282269&r1=282268&r2=282269&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Interpreter/OptionValue.h (original)
+++ lldb/trunk/include/lldb/Interpreter/OptionValue.h Fri Sep 23 13:06:53 2016
@@ -301,7 +301,7 @@ public:
const char *GetStringValue(const char *fail_value = nullptr) const;
- bool SetStringValue(const char *new_value);
+ bool SetStringValue(llvm::StringRef new_value);
uint64_t GetUInt64Value(uint64_t fail_value = 0) const;
Modified: lldb/trunk/include/lldb/Interpreter/OptionValueProperties.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Interpreter/OptionValueProperties.h?rev=282269&r1=282268&r2=282269&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Interpreter/OptionValueProperties.h (original)
+++ lldb/trunk/include/lldb/Interpreter/OptionValueProperties.h Fri Sep 23 13:06:53 2016
@@ -187,8 +187,11 @@ public:
uint32_t idx,
const char *fail_value) const;
+ bool SetPropertyAtIndexAsString(const ExecutionContext *, uint32_t,
+ const char *) = delete;
+
bool SetPropertyAtIndexAsString(const ExecutionContext *exe_ctx, uint32_t idx,
- const char *new_value);
+ llvm::StringRef new_value);
OptionValueString *
GetPropertyAtIndexAsOptionValueString(const ExecutionContext *exe_ctx,
Modified: lldb/trunk/include/lldb/Utility/AnsiTerminal.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Utility/AnsiTerminal.h?rev=282269&r1=282268&r2=282269&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Utility/AnsiTerminal.h (original)
+++ lldb/trunk/include/lldb/Utility/AnsiTerminal.h Fri Sep 23 13:06:53 2016
@@ -50,11 +50,16 @@
#define ANSI_1_CTRL(ctrl1) "\033["##ctrl1 ANSI_ESC_END
#define ANSI_2_CTRL(ctrl1, ctrl2) "\033["##ctrl1 ";"##ctrl2 ANSI_ESC_END
+#include "llvm/ADT/STLExtras.h"
+#include "llvm/ADT/StringRef.h"
+
+#include <string>
+
namespace lldb_utility {
namespace ansi {
-inline std::string FormatAnsiTerminalCodes(const char *format,
+inline std::string FormatAnsiTerminalCodes(llvm::StringRef format,
bool do_color = true) {
// Convert "${ansi.XXX}" tokens to ansi values or clear them if do_color is
// false.
@@ -97,30 +102,33 @@ inline std::string FormatAnsiTerminalCod
#undef _TO_STR
#undef _TO_STR2
};
+ auto codes = llvm::makeArrayRef(g_color_tokens);
+
static const char tok_hdr[] = "${ansi.";
std::string fmt;
- for (const char *p = format; *p; ++p) {
- const char *tok_start = strstr(p, tok_hdr);
- if (!tok_start) {
- fmt.append(p, strlen(p));
+ while (!format.empty()) {
+ llvm::StringRef left, right;
+ std::tie(left, right) = format.split(tok_hdr);
+
+ fmt.append(left);
+
+ if (left == format && right.empty()) {
+ // The header was not found. Just exit.
break;
}
- fmt.append(p, tok_start - p);
- p = tok_start;
-
- const char *tok_str = tok_start + sizeof(tok_hdr) - 1;
- for (size_t i = 0; i < sizeof(g_color_tokens) / sizeof(g_color_tokens[0]);
- ++i) {
- if (!strncmp(tok_str, g_color_tokens[i].name,
- strlen(g_color_tokens[i].name))) {
- if (do_color)
- fmt.append(g_color_tokens[i].value);
- p = tok_str + strlen(g_color_tokens[i].name) - 1;
- break;
- }
+ for (const auto &code : codes) {
+ if (!right.consume_front(code.name))
+ continue;
+
+ if (do_color)
+ fmt.append(code.value);
+ format = right;
+ break;
}
+
+ format = format.drop_front();
}
return fmt;
}
Modified: lldb/trunk/source/API/SBDebugger.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/API/SBDebugger.cpp?rev=282269&r1=282268&r2=282269&view=diff
==============================================================================
--- lldb/trunk/source/API/SBDebugger.cpp (original)
+++ lldb/trunk/source/API/SBDebugger.cpp Fri Sep 23 13:06:53 2016
@@ -930,14 +930,15 @@ const char *SBDebugger::GetPrompt() cons
if (log)
log->Printf("SBDebugger(%p)::GetPrompt () => \"%s\"",
static_cast<void *>(m_opaque_sp.get()),
- (m_opaque_sp ? m_opaque_sp->GetPrompt() : ""));
+ (m_opaque_sp ? m_opaque_sp->GetPrompt().str().c_str() : ""));
- return (m_opaque_sp ? m_opaque_sp->GetPrompt() : nullptr);
+ return (m_opaque_sp ? ConstString(m_opaque_sp->GetPrompt()).GetCString()
+ : nullptr);
}
void SBDebugger::SetPrompt(const char *prompt) {
if (m_opaque_sp)
- m_opaque_sp->SetPrompt(prompt);
+ m_opaque_sp->SetPrompt(llvm::StringRef::withNullAsEmpty(prompt));
}
ScriptLanguage SBDebugger::GetScriptLanguage() const {
Modified: lldb/trunk/source/Commands/CommandObjectCommands.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectCommands.cpp?rev=282269&r1=282268&r2=282269&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectCommands.cpp (original)
+++ lldb/trunk/source/Commands/CommandObjectCommands.cpp Fri Sep 23 13:06:53 2016
@@ -1077,9 +1077,9 @@ protected:
const bool multiple_lines = true; // Get multiple lines
IOHandlerSP io_handler_sp(new IOHandlerEditline(
debugger, IOHandler::Type::Other,
- "lldb-regex", // Name of input reader for history
- "> ", // Prompt
- nullptr, // Continuation prompt
+ "lldb-regex", // Name of input reader for history
+ llvm::StringRef("> "), // Prompt
+ llvm::StringRef(), // Continuation prompt
multiple_lines, color_prompt,
0, // Don't show line numbers
*this));
Modified: lldb/trunk/source/Commands/CommandObjectExpression.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Commands/CommandObjectExpression.cpp?rev=282269&r1=282268&r2=282269&view=diff
==============================================================================
--- lldb/trunk/source/Commands/CommandObjectExpression.cpp (original)
+++ lldb/trunk/source/Commands/CommandObjectExpression.cpp Fri Sep 23 13:06:53 2016
@@ -482,8 +482,8 @@ void CommandObjectExpression::GetMultili
IOHandlerSP io_handler_sp(
new IOHandlerEditline(debugger, IOHandler::Type::Expression,
"lldb-expr", // Name of input reader for history
- nullptr, // No prompt
- nullptr, // Continuation prompt
+ llvm::StringRef(), // No prompt
+ llvm::StringRef(), // Continuation prompt
multiple_lines, color_prompt,
1, // Show line numbers starting at 1
*this));
Modified: lldb/trunk/source/Core/Debugger.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Core/Debugger.cpp?rev=282269&r1=282268&r2=282269&view=diff
==============================================================================
--- lldb/trunk/source/Core/Debugger.cpp (original)
+++ lldb/trunk/source/Core/Debugger.cpp Fri Sep 23 13:06:53 2016
@@ -276,7 +276,7 @@ Error Debugger::SetPropertyValue(const E
if (error.Success()) {
// FIXME it would be nice to have "on-change" callbacks for properties
if (strcmp(property_path, g_properties[ePropertyPrompt].name) == 0) {
- const char *new_prompt = GetPrompt();
+ llvm::StringRef new_prompt = GetPrompt();
std::string str = lldb_utility::ansi::FormatAnsiTerminalCodes(
new_prompt, GetUseColor());
if (str.length())
@@ -337,16 +337,16 @@ bool Debugger::GetNotifyVoid() const {
nullptr, idx, g_properties[idx].default_uint_value != 0);
}
-const char *Debugger::GetPrompt() const {
+llvm::StringRef Debugger::GetPrompt() const {
const uint32_t idx = ePropertyPrompt;
return m_collection_sp->GetPropertyAtIndexAsString(
nullptr, idx, g_properties[idx].default_cstr_value);
}
-void Debugger::SetPrompt(const char *p) {
+void Debugger::SetPrompt(llvm::StringRef p) {
const uint32_t idx = ePropertyPrompt;
m_collection_sp->SetPropertyAtIndexAsString(nullptr, idx, p);
- const char *new_prompt = GetPrompt();
+ llvm::StringRef new_prompt = GetPrompt();
std::string str =
lldb_utility::ansi::FormatAnsiTerminalCodes(new_prompt, GetUseColor());
if (str.length())
Modified: lldb/trunk/source/Core/Event.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Core/Event.cpp?rev=282269&r1=282268&r2=282269&view=diff
==============================================================================
--- lldb/trunk/source/Core/Event.cpp (original)
+++ lldb/trunk/source/Core/Event.cpp Fri Sep 23 13:06:53 2016
@@ -113,6 +113,10 @@ EventDataBytes::EventDataBytes(const cha
SetBytesFromCString(cstr);
}
+EventDataBytes::EventDataBytes(llvm::StringRef str) : m_bytes() {
+ SetBytes(str.data(), str.size());
+}
+
EventDataBytes::EventDataBytes(const void *src, size_t src_len) : m_bytes() {
SetBytes(src, src_len);
}
Modified: lldb/trunk/source/Core/IOHandler.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Core/IOHandler.cpp?rev=282269&r1=282268&r2=282269&view=diff
==============================================================================
--- lldb/trunk/source/Core/IOHandler.cpp (original)
+++ lldb/trunk/source/Core/IOHandler.cpp Fri Sep 23 13:06:53 2016
@@ -132,10 +132,10 @@ IOHandlerConfirm::IOHandlerConfirm(Debug
: IOHandlerEditline(
debugger, IOHandler::Type::Confirm,
nullptr, // nullptr editline_name means no history loaded/saved
- nullptr, // No prompt
- nullptr, // No continuation prompt
- false, // Multi-line
- false, // Don't colorize the prompt (i.e. the confirm message.)
+ llvm::StringRef(), // No prompt
+ llvm::StringRef(), // No continuation prompt
+ false, // Multi-line
+ false, // Don't colorize the prompt (i.e. the confirm message.)
0, *this),
m_default_response(default_response), m_user_response(default_response) {
StreamString prompt_stream;
@@ -145,7 +145,7 @@ IOHandlerConfirm::IOHandlerConfirm(Debug
else
prompt_stream.Printf(": [y/N] ");
- SetPrompt(prompt_stream.GetString().c_str());
+ SetPrompt(prompt_stream.GetString());
}
IOHandlerConfirm::~IOHandlerConfirm() = default;
@@ -253,8 +253,9 @@ int IOHandlerDelegate::IOHandlerComplete
IOHandlerEditline::IOHandlerEditline(
Debugger &debugger, IOHandler::Type type,
const char *editline_name, // Used for saving history files
- const char *prompt, const char *continuation_prompt, bool multi_line,
- bool color_prompts, uint32_t line_number_start, IOHandlerDelegate &delegate)
+ llvm::StringRef prompt, llvm::StringRef continuation_prompt,
+ bool multi_line, bool color_prompts, uint32_t line_number_start,
+ IOHandlerDelegate &delegate)
: IOHandlerEditline(debugger, type,
StreamFileSP(), // Inherit input from top input reader
StreamFileSP(), // Inherit output from top input reader
@@ -269,8 +270,9 @@ IOHandlerEditline::IOHandlerEditline(
const lldb::StreamFileSP &input_sp, const lldb::StreamFileSP &output_sp,
const lldb::StreamFileSP &error_sp, uint32_t flags,
const char *editline_name, // Used for saving history files
- const char *prompt, const char *continuation_prompt, bool multi_line,
- bool color_prompts, uint32_t line_number_start, IOHandlerDelegate &delegate)
+ llvm::StringRef prompt, llvm::StringRef continuation_prompt,
+ bool multi_line, bool color_prompts, uint32_t line_number_start,
+ IOHandlerDelegate &delegate)
: IOHandler(debugger, type, input_sp, output_sp, error_sp, flags),
#ifndef LLDB_DISABLE_LIBEDIT
m_editline_ap(),
@@ -305,7 +307,7 @@ IOHandlerEditline::IOHandlerEditline(
}
#endif
SetBaseLineNumber(m_base_line_number);
- SetPrompt(prompt ? prompt : "");
+ SetPrompt(prompt);
SetContinuationPrompt(continuation_prompt);
}
@@ -444,11 +446,9 @@ const char *IOHandlerEditline::GetPrompt
return m_prompt.c_str();
}
-bool IOHandlerEditline::SetPrompt(const char *p) {
- if (p && p[0])
- m_prompt = p;
- else
- m_prompt.clear();
+bool IOHandlerEditline::SetPrompt(llvm::StringRef prompt) {
+ m_prompt = prompt;
+
#ifndef LLDB_DISABLE_LIBEDIT
if (m_editline_ap)
m_editline_ap->SetPrompt(m_prompt.empty() ? nullptr : m_prompt.c_str());
@@ -461,11 +461,8 @@ const char *IOHandlerEditline::GetContin
: m_continuation_prompt.c_str());
}
-void IOHandlerEditline::SetContinuationPrompt(const char *p) {
- if (p && p[0])
- m_continuation_prompt = p;
- else
- m_continuation_prompt.clear();
+void IOHandlerEditline::SetContinuationPrompt(llvm::StringRef prompt) {
+ m_continuation_prompt = prompt;
#ifndef LLDB_DISABLE_LIBEDIT
if (m_editline_ap)
Modified: lldb/trunk/source/Expression/REPL.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Expression/REPL.cpp?rev=282269&r1=282268&r2=282269&view=diff
==============================================================================
--- lldb/trunk/source/Expression/REPL.cpp (original)
+++ lldb/trunk/source/Expression/REPL.cpp Fri Sep 23 13:06:53 2016
@@ -81,11 +81,11 @@ lldb::IOHandlerSP REPL::GetIOHandler() {
m_io_handler_sp.reset(
new IOHandlerEditline(debugger, IOHandler::Type::REPL,
"lldb-repl", // Name of input reader for history
- "> ", // prompt
- ". ", // Continuation prompt
- true, // Multi-line
- true, // The REPL prompt is always colored
- 1, // Line number
+ llvm::StringRef("> "), // prompt
+ llvm::StringRef(". "), // Continuation prompt
+ true, // Multi-line
+ true, // The REPL prompt is always colored
+ 1, // Line number
*this));
// Don't exit if CTRL+C is pressed
Modified: lldb/trunk/source/Interpreter/CommandInterpreter.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Interpreter/CommandInterpreter.cpp?rev=282269&r1=282268&r2=282269&view=diff
==============================================================================
--- lldb/trunk/source/Interpreter/CommandInterpreter.cpp (original)
+++ lldb/trunk/source/Interpreter/CommandInterpreter.cpp Fri Sep 23 13:06:53 2016
@@ -1899,7 +1899,7 @@ int CommandInterpreter::HandleCompletion
CommandInterpreter::~CommandInterpreter() {}
-void CommandInterpreter::UpdatePrompt(const char *new_prompt) {
+void CommandInterpreter::UpdatePrompt(llvm::StringRef new_prompt) {
EventSP prompt_change_event_sp(
new Event(eBroadcastBitResetPrompt, new EventDataBytes(new_prompt)));
;
@@ -2238,7 +2238,9 @@ void CommandInterpreter::HandleCommands(
continue;
if (options.GetEchoCommands()) {
- result.AppendMessageWithFormat("%s %s\n", m_debugger.GetPrompt(), cmd);
+ // TODO: Add Stream support.
+ result.AppendMessageWithFormat("%s %s\n",
+ m_debugger.GetPrompt().str().c_str(), cmd);
}
CommandReturnObject tmp_result;
@@ -2461,7 +2463,7 @@ void CommandInterpreter::HandleCommandsF
flags,
nullptr, // Pass in NULL for "editline_name" so no history is saved,
// or written
- debugger.GetPrompt(), NULL,
+ debugger.GetPrompt(), llvm::StringRef(),
false, // Not multi-line
debugger.GetUseColor(), 0, *this));
const bool old_async_execution = debugger.GetAsyncExecution();
@@ -2824,9 +2826,9 @@ void CommandInterpreter::GetLLDBCommands
IOHandlerSP io_handler_sp(
new IOHandlerEditline(debugger, IOHandler::Type::CommandList,
"lldb", // Name of input reader for history
- prompt, // Prompt
- NULL, // Continuation prompt
- true, // Get multiple lines
+ llvm::StringRef::withNullAsEmpty(prompt), // Prompt
+ llvm::StringRef(), // Continuation prompt
+ true, // Get multiple lines
debugger.GetUseColor(),
0, // Don't show line numbers
delegate)); // IOHandlerDelegate
@@ -2847,9 +2849,9 @@ void CommandInterpreter::GetPythonComman
IOHandlerSP io_handler_sp(
new IOHandlerEditline(debugger, IOHandler::Type::PythonCode,
"lldb-python", // Name of input reader for history
- prompt, // Prompt
- NULL, // Continuation prompt
- true, // Get multiple lines
+ llvm::StringRef::withNullAsEmpty(prompt), // Prompt
+ llvm::StringRef(), // Continuation prompt
+ true, // Get multiple lines
debugger.GetUseColor(),
0, // Don't show line numbers
delegate)); // IOHandlerDelegate
@@ -2898,7 +2900,7 @@ CommandInterpreter::GetIOHandler(bool fo
m_debugger, IOHandler::Type::CommandInterpreter,
m_debugger.GetInputFile(), m_debugger.GetOutputFile(),
m_debugger.GetErrorFile(), flags, "lldb", m_debugger.GetPrompt(),
- NULL, // Continuation prompt
+ llvm::StringRef(), // Continuation prompt
false, // Don't enable multiple line input, just single line commands
m_debugger.GetUseColor(),
0, // Don't show line numbers
Modified: lldb/trunk/source/Interpreter/OptionValue.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Interpreter/OptionValue.cpp?rev=282269&r1=282268&r2=282269&view=diff
==============================================================================
--- lldb/trunk/source/Interpreter/OptionValue.cpp (original)
+++ lldb/trunk/source/Interpreter/OptionValue.cpp Fri Sep 23 13:06:53 2016
@@ -419,10 +419,10 @@ const char *OptionValue::GetStringValue(
return fail_value;
}
-bool OptionValue::SetStringValue(const char *new_value) {
+bool OptionValue::SetStringValue(llvm::StringRef new_value) {
OptionValueString *option_value = GetAsString();
if (option_value) {
- option_value->SetCurrentValue(llvm::StringRef::withNullAsEmpty(new_value));
+ option_value->SetCurrentValue(new_value);
return true;
}
return false;
Modified: lldb/trunk/source/Interpreter/OptionValueProperties.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Interpreter/OptionValueProperties.cpp?rev=282269&r1=282268&r2=282269&view=diff
==============================================================================
--- lldb/trunk/source/Interpreter/OptionValueProperties.cpp (original)
+++ lldb/trunk/source/Interpreter/OptionValueProperties.cpp Fri Sep 23 13:06:53 2016
@@ -491,7 +491,7 @@ const char *OptionValueProperties::GetPr
}
bool OptionValueProperties::SetPropertyAtIndexAsString(
- const ExecutionContext *exe_ctx, uint32_t idx, const char *new_value) {
+ const ExecutionContext *exe_ctx, uint32_t idx, llvm::StringRef new_value) {
const Property *property = GetPropertyAtIndex(exe_ctx, true, idx);
if (property) {
OptionValue *value = property->GetValue().get();
Modified: lldb/trunk/source/Target/Target.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Target/Target.cpp?rev=282269&r1=282268&r2=282269&view=diff
==============================================================================
--- lldb/trunk/source/Target/Target.cpp (original)
+++ lldb/trunk/source/Target/Target.cpp Fri Sep 23 13:06:53 2016
@@ -3701,7 +3701,8 @@ const char *TargetProperties::GetArg0()
void TargetProperties::SetArg0(const char *arg) {
const uint32_t idx = ePropertyArg0;
- m_collection_sp->SetPropertyAtIndexAsString(nullptr, idx, arg);
+ m_collection_sp->SetPropertyAtIndexAsString(
+ nullptr, idx, llvm::StringRef::withNullAsEmpty(arg));
m_launch_info.SetArg0(arg);
}
@@ -3818,7 +3819,8 @@ FileSpec TargetProperties::GetStandardIn
void TargetProperties::SetStandardInputPath(const char *p) {
const uint32_t idx = ePropertyInputPath;
- m_collection_sp->SetPropertyAtIndexAsString(nullptr, idx, p);
+ m_collection_sp->SetPropertyAtIndexAsString(
+ nullptr, idx, llvm::StringRef::withNullAsEmpty(p));
}
FileSpec TargetProperties::GetStandardOutputPath() const {
@@ -3828,7 +3830,8 @@ FileSpec TargetProperties::GetStandardOu
void TargetProperties::SetStandardOutputPath(const char *p) {
const uint32_t idx = ePropertyOutputPath;
- m_collection_sp->SetPropertyAtIndexAsString(nullptr, idx, p);
+ m_collection_sp->SetPropertyAtIndexAsString(
+ nullptr, idx, llvm::StringRef::withNullAsEmpty(p));
}
FileSpec TargetProperties::GetStandardErrorPath() const {
@@ -3861,7 +3864,8 @@ const char *TargetProperties::GetExpress
void TargetProperties::SetStandardErrorPath(const char *p) {
const uint32_t idx = ePropertyErrorPath;
- m_collection_sp->SetPropertyAtIndexAsString(nullptr, idx, p);
+ m_collection_sp->SetPropertyAtIndexAsString(
+ nullptr, idx, llvm::StringRef::withNullAsEmpty(p));
}
bool TargetProperties::GetBreakpointsConsultPlatformAvoidList() {
More information about the lldb-commits
mailing list