Author: Jonas Devlieghere Date: 2022-03-08T20:27:40-08:00 New Revision: e618eb8727b0f9aebb54d48f6978c0bd3a4cf010
URL: https://github.com/llvm/llvm-project/commit/e618eb8727b0f9aebb54d48f6978c0bd3a4cf010 DIFF: https://github.com/llvm/llvm-project/commit/e618eb8727b0f9aebb54d48f6978c0bd3a4cf010.diff LOG: [lldb] A few small changes to HandleProgressEvent Of course I only noticed these things *after* landing the original patch... - Flush the output after clearing the line. - Move up the printing the carriage return to avoid duplication. - Use hexadecimal instead of octal for escape codes. Added: Modified: lldb/source/Core/Debugger.cpp Removed: ################################################################################ diff --git a/lldb/source/Core/Debugger.cpp b/lldb/source/Core/Debugger.cpp index 39e83de8b0347..3ebf3ceefc3a8 100644 --- a/lldb/source/Core/Debugger.cpp +++ b/lldb/source/Core/Debugger.cpp @@ -1783,9 +1783,13 @@ void Debugger::HandleProgressEvent(const lldb::EventSP &event_sp) { if (!output.GetIsInteractive() || !output.GetIsTerminalWithColors()) return; + // Print over previous line, if any. + output.Printf("\r"); + if (data->GetCompleted()) { // Clear the current line. - output.Printf("\33[2K\r"); + output.Printf("\x1B[2K"); + output.Flush(); return; } @@ -1795,9 +1799,6 @@ void Debugger::HandleProgressEvent(const lldb::EventSP &event_sp) { output.Printf( "%s", ansi::FormatAnsiTerminalCodes(ansi_prefix, use_color).c_str()); - // Print over previous line, if any. - output.Printf("\r"); - // Print the progress message. std::string message = data->GetMessage(); if (data->GetTotal() != UINT64_MAX) { _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits