migration: Don't leak IO channels
Since qemu_fopen_channel_{in,out}put take references on the underlying IO channels, make sure to release our references to them. Signed-off-by: Ross Lagerwall <ross.lagerwall@citrix.com> Message-Id: <20171101142526.1006-2-ross.lagerwall@citrix.com> Reviewed-by: Daniel P. Berrange <berrange@redhat.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
This commit is contained in:
parent
6039dd5b1c
commit
032b79f717
@ -2266,6 +2266,7 @@ void qmp_xen_save_devices_state(const char *filename, bool has_live, bool live,
|
|||||||
}
|
}
|
||||||
qio_channel_set_name(QIO_CHANNEL(ioc), "migration-xen-save-state");
|
qio_channel_set_name(QIO_CHANNEL(ioc), "migration-xen-save-state");
|
||||||
f = qemu_fopen_channel_output(QIO_CHANNEL(ioc));
|
f = qemu_fopen_channel_output(QIO_CHANNEL(ioc));
|
||||||
|
object_unref(OBJECT(ioc));
|
||||||
ret = qemu_save_device_state(f);
|
ret = qemu_save_device_state(f);
|
||||||
qemu_fclose(f);
|
qemu_fclose(f);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
@ -2313,6 +2314,7 @@ void qmp_xen_load_devices_state(const char *filename, Error **errp)
|
|||||||
}
|
}
|
||||||
qio_channel_set_name(QIO_CHANNEL(ioc), "migration-xen-load-state");
|
qio_channel_set_name(QIO_CHANNEL(ioc), "migration-xen-load-state");
|
||||||
f = qemu_fopen_channel_input(QIO_CHANNEL(ioc));
|
f = qemu_fopen_channel_input(QIO_CHANNEL(ioc));
|
||||||
|
object_unref(OBJECT(ioc));
|
||||||
|
|
||||||
ret = qemu_loadvm_state(f);
|
ret = qemu_loadvm_state(f);
|
||||||
qemu_fclose(f);
|
qemu_fclose(f);
|
||||||
|
Loading…
Reference in New Issue
Block a user