On Mon, Nov 28, 2011 at 07:37:16PM +0200, Zeeshan Ali (Khattak) wrote: > From: "Zeeshan Ali (Khattak)" <zeesha...@gnome.org> > > --- > libvirt-gobject/libvirt-gobject-connection.c | 10 ++++++++-- > 1 files changed, 8 insertions(+), 2 deletions(-) > > diff --git a/libvirt-gobject/libvirt-gobject-connection.c > b/libvirt-gobject/libvirt-gobject-connection.c > index a258847..02b54a1 100644 > --- a/libvirt-gobject/libvirt-gobject-connection.c > +++ b/libvirt-gobject/libvirt-gobject-connection.c > @@ -264,6 +264,7 @@ static int domain_event_cb(virConnectPtr conn > G_GNUC_UNUSED, > GVirConnection *gconn = opaque; > GVirDomain *gdom; > GVirConnectionPrivate *priv = gconn->priv; > + gboolean was_unknown = FALSE; > > if (virDomainGetUUIDString(dom, uuid) < 0) { > g_warning("Failed to get domain UUID on %p", dom); > @@ -282,6 +283,8 @@ static int domain_event_cb(virConnectPtr conn > G_GNUC_UNUSED, > g_mutex_lock(priv->lock); > g_hash_table_insert(priv->domains, > (gpointer)gvir_domain_get_uuid(gdom), gdom); > g_mutex_unlock(priv->lock); > + > + was_unknown = TRUE; > } > > switch (event) { > @@ -307,9 +310,12 @@ static int domain_event_cb(virConnectPtr conn > G_GNUC_UNUSED, > break; > > case VIR_DOMAIN_EVENT_STARTED: > - if (detail == VIR_DOMAIN_EVENT_STARTED_BOOTED) > + if (detail == VIR_DOMAIN_EVENT_STARTED_BOOTED) { > + if (was_unknown) > + /* Most probably a transient domain */ > + g_signal_emit(gconn, signals[VIR_DOMAIN_ADDED], 0, gdom); > g_signal_emit_by_name(gdom, "started::booted"); > - else if (detail == VIR_DOMAIN_EVENT_STARTED_MIGRATED) > + } else if (detail == VIR_DOMAIN_EVENT_STARTED_MIGRATED) > g_signal_emit_by_name(gdom, "started::migrated"); > else if (detail == VIR_DOMAIN_EVENT_STARTED_RESTORED) > g_signal_emit_by_name(gdom, "started::restored"); > --
ACK Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :| -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list