[virt-tools-list] [virt-viewer][PATCH 2/3] Prefer to use virConnectDomainEventRegisterAny()
Fabiano Fidêncio
fidencio at redhat.com
Wed Nov 19 04:58:22 UTC 2014
The usage of virConnectDomainEventRegister() is no longer recommended
according to the libvirt's documentation.
Related to: rhbz#1164052
https://bugzilla.redhat.com/show_bug.cgi?id=1164052
---
src/virt-viewer.c | 20 +++++++++++++-------
1 file changed, 13 insertions(+), 7 deletions(-)
diff --git a/src/virt-viewer.c b/src/virt-viewer.c
index 9fa2a80..bc831dc 100644
--- a/src/virt-viewer.c
+++ b/src/virt-viewer.c
@@ -59,6 +59,7 @@ struct _VirtViewerPrivate {
gboolean waitvm;
gboolean reconnect;
gboolean auth_cancelled;
+ gint domain_event;
};
G_DEFINE_TYPE (VirtViewer, virt_viewer, VIRT_VIEWER_TYPE_APP)
@@ -530,9 +531,11 @@ virt_viewer_dispose (GObject *object)
VirtViewerPrivate *priv = self->priv;
if (priv->conn) {
- if (priv->withEvents)
- virConnectDomainEventDeregister(priv->conn,
- virt_viewer_domain_event);
+ if (priv->withEvents) {
+ virConnectDomainEventDeregisterAny(priv->conn,
+ priv->domain_event);
+ priv->domain_event = -1;
+ }
virConnectUnregisterCloseCallback(priv->conn,
virt_viewer_conn_event);
virConnectClose(priv->conn);
@@ -821,10 +824,13 @@ virt_viewer_connect(VirtViewerApp *app)
return -1;
}
- if (virConnectDomainEventRegister(priv->conn,
- virt_viewer_domain_event,
- self,
- NULL) < 0)
+ priv->domain_event = virConnectDomainEventRegisterAny(priv->conn,
+ priv->dom,
+ VIR_DOMAIN_EVENT_ID_LIFECYCLE,
+ VIR_DOMAIN_EVENT_CALLBACK(virt_viewer_domain_event),
+ self,
+ NULL);
+ if (priv->domain_event < 0)
priv->withEvents = FALSE;
else
priv->withEvents = TRUE;
--
2.1.0
More information about the virt-tools-list
mailing list