Tags: gitster/git
Tags
sideband: clear full line when printing remote messages demultiplex_sideband() can write its remote output over active local progress lines. That's why it has been using ANSI code Erase in Line on smart terminals to clear the remainder of lines it writes since ebe8fa7 (fix display overlap between remote and local progress, 2007-11-04). This erases the last character of remote lines that span the full width of the terminal, though, as the cursor is stuck at the rightmost column for them. It's the same effect as in the following command, which clears the 1 and shows just the leading zeros: $ EL="\033[K" $ printf "%0${COLUMNS}d${EL}\n" 1 If we move the ANSI code to the start we get to see the 1 as well: $ printf "${EL}%0${COLUMNS}d\n" 1 So do the same in demultiplex_sideband() and emit the ANSI code as a prefix instead of a suffix to show messages in full even if they happen to fill the whole width of a smart terminal. Reported-by: Hugo Osvaldo Barrera <[email protected]> Suggested-by: Chris Torek <[email protected]> Signed-off-by: René Scharfe <[email protected]> Signed-off-by: Junio C Hamano <[email protected]>
PreviousNext