virsh: Fix job status indicator for 0 length block jobs

Although 0 length block jobs aren't entirely useful, the output of virsh
blockjob is empty due to the condition that suppresses the output for
migration jobs that did not start. Since the only place that actually
uses the condition that suppresses the output is in migration, let's
move the check there and thus add support for 0 of 0 equaling to 100%.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1196711
This commit is contained in:
Peter Krempa 2015-09-11 21:34:24 +02:00
parent d7a0386e22
commit 7acfb940f7

View File

@ -1700,10 +1700,6 @@ virshPrintJobProgress(const char *label, unsigned long long remaining,
{
int progress;
if (total == 0)
/* migration has not been started */
return;
if (remaining == 0) {
/* migration has completed */
progress = 100;
@ -4401,7 +4397,7 @@ virshWatchJob(vshControl *ctl,
ret = virDomainGetJobInfo(dom, &jobinfo);
pthread_sigmask(SIG_SETMASK, &oldsigmask, NULL);
if (ret == 0) {
if (verbose)
if (verbose && jobinfo.dataTotal > 0)
virshPrintJobProgress(label, jobinfo.dataRemaining,
jobinfo.dataTotal);