mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-22 11:22:23 +00:00
qemuBackupJobTerminate: Move cleanup of temp files earlier
Upcoming patch will remove unnecessary actions if the VM crashed. The cleanup needs to be performed always, thus needs to be moved earlier. Signed-off-by: Peter Krempa <pkrempa@redhat.com> Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
parent
6423e30828
commit
5627f62ec4
@ -560,21 +560,6 @@ qemuBackupJobTerminate(virDomainObjPtr vm,
|
||||
qemuDomainObjPrivatePtr priv = vm->privateData;
|
||||
size_t i;
|
||||
|
||||
qemuDomainJobInfoUpdateTime(priv->job.current);
|
||||
|
||||
g_clear_pointer(&priv->job.completed, qemuDomainJobInfoFree);
|
||||
priv->job.completed = qemuDomainJobInfoCopy(priv->job.current);
|
||||
|
||||
priv->job.completed->stats.backup.total = priv->backup->push_total;
|
||||
priv->job.completed->stats.backup.transferred = priv->backup->push_transferred;
|
||||
priv->job.completed->stats.backup.tmp_used = priv->backup->pull_tmp_used;
|
||||
priv->job.completed->stats.backup.tmp_total = priv->backup->pull_tmp_total;
|
||||
|
||||
priv->job.completed->status = jobstatus;
|
||||
priv->job.completed->errmsg = g_strdup(priv->backup->errmsg);
|
||||
|
||||
qemuDomainEventEmitJobCompleted(priv->driver, vm);
|
||||
|
||||
if (!(priv->job.apiFlags & VIR_DOMAIN_BACKUP_BEGIN_REUSE_EXTERNAL) &&
|
||||
(priv->backup->type == VIR_DOMAIN_BACKUP_TYPE_PULL ||
|
||||
(priv->backup->type == VIR_DOMAIN_BACKUP_TYPE_PUSH &&
|
||||
@ -598,6 +583,21 @@ qemuBackupJobTerminate(virDomainObjPtr vm,
|
||||
}
|
||||
}
|
||||
|
||||
qemuDomainJobInfoUpdateTime(priv->job.current);
|
||||
|
||||
g_clear_pointer(&priv->job.completed, qemuDomainJobInfoFree);
|
||||
priv->job.completed = qemuDomainJobInfoCopy(priv->job.current);
|
||||
|
||||
priv->job.completed->stats.backup.total = priv->backup->push_total;
|
||||
priv->job.completed->stats.backup.transferred = priv->backup->push_transferred;
|
||||
priv->job.completed->stats.backup.tmp_used = priv->backup->pull_tmp_used;
|
||||
priv->job.completed->stats.backup.tmp_total = priv->backup->pull_tmp_total;
|
||||
|
||||
priv->job.completed->status = jobstatus;
|
||||
priv->job.completed->errmsg = g_strdup(priv->backup->errmsg);
|
||||
|
||||
qemuDomainEventEmitJobCompleted(priv->driver, vm);
|
||||
|
||||
virDomainBackupDefFree(priv->backup);
|
||||
priv->backup = NULL;
|
||||
qemuDomainObjEndAsyncJob(priv->driver, vm);
|
||||
|
Loading…
x
Reference in New Issue
Block a user