]> xenbits.xensource.com Git - libvirt.git/commitdiff
* src/xs_internal.c: fix xen events handling problem (Dan Berrange)
authorDaniel Veillard <veillard@redhat.com>
Wed, 11 Mar 2009 13:43:24 +0000 (13:43 +0000)
committerDaniel Veillard <veillard@redhat.com>
Wed, 11 Mar 2009 13:43:24 +0000 (13:43 +0000)
Daniel

ChangeLog
src/xs_internal.c

index b7126f9daca62304897d48f8f3b1becbaf954313..03a973f6a7750365f77afa799660b70b4ee77fc9 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,10 @@
+Wed Mar 11 14:42:24 CET 2009 Daniel Veillard <veilard@redhat.com>
+
+       * src/xs_internal.c: fix xen events handling problem (Dan Berrange)
+
 Tue Mar 10 12:03:37 CET 2009 Daniel Veillard <veilard@redhat.com>
 
-       * src/xend_internal.c: fix an allocation problem in 
+       * src/xend_internal.c: fix an allocation problem in
          xenDaemonDomainLookupByName_ids
 
 Tue Mar 10 10:29:46 GMT 2009 Daniel P. Berrange <berrange@redhat.com>
index 298bee802bccdfa2dcf77c8bc2b43b3380d2b6dd..50cc575f806cbd5251d141d33d56679c797f9932 100644 (file)
@@ -1215,7 +1215,7 @@ xenStoreFindWatch(xenStoreWatchListPtr list,
 static void
 xenStoreWatchEvent(int watch ATTRIBUTE_UNUSED,
                    int fd ATTRIBUTE_UNUSED,
-                   int events ATTRIBUTE_UNUSED,
+                   int events,
                    void *data)
 {
     char                **event;
@@ -1226,8 +1226,12 @@ xenStoreWatchEvent(int watch ATTRIBUTE_UNUSED,
 
     virConnectPtr        conn = data;
     xenUnifiedPrivatePtr priv = (xenUnifiedPrivatePtr) conn->privateData;
+
     if(!priv) return;
 
+    /* only set a watch on read and write events */
+    if (events & (VIR_EVENT_HANDLE_ERROR | VIR_EVENT_HANDLE_HANGUP)) return;
+
     xenUnifiedLock(priv);
 
     if(!priv->xshandle)