Исправлен вывод rsync при ошибке

develop 3.3.1.1
Mike Khiretskiy 9 years ago
parent 38f5bb26fc
commit 4bf835a216

@ -78,6 +78,7 @@ class RsyncProgressBar:
self.rsyncstr = rsyncstr self.rsyncstr = rsyncstr
self.parent = parent self.parent = parent
self.value = 0 self.value = 0
self.errors = []
if cmpVersion(rsyncver, "3.1.0") >= 0: if cmpVersion(rsyncver, "3.1.0") >= 0:
self.extraopts = " --msgs2stderr" self.extraopts = " --msgs2stderr"
self.use_stderr = True self.use_stderr = True
@ -105,7 +106,10 @@ class RsyncProgressBar:
Rsync error message Rsync error message
""" """
if self.pipe: if self.pipe:
return self.pipe.stderr.read() if self.use_stderr:
return "".join(self.errors)
else:
return self.pipe.stderr.read()
return _("RsyncProgressBar: Wrong pipe") return _("RsyncProgressBar: Wrong pipe")
def runsilent(self): def runsilent(self):
@ -146,6 +150,8 @@ class RsyncProgressBar:
s = self.pipe.stdout.readline() s = self.pipe.stdout.readline()
if len(s) == 0: if len(s) == 0:
break break
if s.startswith("rsync:"):
self.errors.append(s)
q = self.receiverre.search(s) q = self.receiverre.search(s)
if q: if q:
if not self.copyStarting: if not self.copyStarting:

Loading…
Cancel
Save