[Bug 12367] New: temporary lines in --progress output are not cleared

samba-bugs at samba.org samba-bugs at samba.org
Fri Oct 7 12:20:17 UTC 2016


https://bugzilla.samba.org/show_bug.cgi?id=12367

            Bug ID: 12367
           Summary: temporary lines in --progress output are not cleared
           Product: rsync
           Version: 3.1.2
          Hardware: All
                OS: All
            Status: NEW
          Severity: minor
          Priority: P5
         Component: core
          Assignee: wayned at samba.org
          Reporter: paul at debian.org
        QA Contact: rsync-qa at samba.org

A bug report received by Debian
(https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=749165). I can verify this. 
emit_filelist_progress() in flist.c needs something like a
"output_needs_newline_maybe" variable... I can't quite see how to implement
that cleanly.

>>---

Some temporary lines output by --progress are not cleared, so that
the output looks strange. Here's a testcase.

------------------------------------------------------------
#!/bin/sh

set -e

export LC_ALL=C
t=$HOME/rsync-test
mkdir "$t"
cd "$t"

if [ ! -d a1 ]; then
  mkdir a1
  touch a1/foo
fi

if [ ! -d a2 ]; then
  mkdir a2
  for i in `seq 1 250`
  do
    mkdir -p a2/dir$i
    for j in `seq 1 20`
    do
      mktemp --tmpdir=a2/dir$i > /dev/null
    done
  done
fi

mkdir b
for i in 1 2
do
  mkdir -p c/a$i
  ln -ns ../c/a$i b
done

rs()
{
  rsync -KRt "$@" a2/*/* a1/foo "localhost:$t/b/"
}
rs
rs --progress
rm -r "$t"
------------------------------------------------------------

I get:

a1/00 files...
a2/

(sometimes without the "a2/" line).

If I redirect the output to some file, I can see with "less":

 0 files...^M 400 files...^M 2500 files...^M 4600 files...^Ma1/
a2/

The problem is that when "a1/" is output, the previous " 4600 files..."
line was not cleared and one can still see the end of it.

<<---

I can verify this.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.



More information about the rsync mailing list