]> xenbits.xensource.com Git - libvirt.git/commitdiff
daemon: stream: set stream->closed on removal
authorCole Robinson <crobinso@redhat.com>
Mon, 25 Apr 2016 18:16:07 +0000 (14:16 -0400)
committerCole Robinson <crobinso@redhat.com>
Mon, 2 May 2016 14:13:04 +0000 (10:13 -0400)
These are the only places where we don't set stream->closed when
aborting the stream. This leads to spurious errors when the client
hangs up unexpectedly:

error : virFDStreamUpdateCallback:127 : internal error: stream is not open

daemon/stream.c

index 8a9726059f9b08809d2d8387735506eb07e819ec..fcec3d0608d1417dfd725cec7e06f782fb8ee720 100644 (file)
@@ -463,6 +463,7 @@ daemonRemoveClientStream(virNetServerClientPtr client,
     }
 
     if (!stream->closed) {
+        stream->closed = true;
         virStreamEventRemoveCallback(stream->st);
         virStreamAbort(stream->st);
     }
@@ -493,6 +494,7 @@ daemonRemoveAllClientStreams(daemonClientStream *stream)
         tmp = stream->next;
 
         if (!stream->closed) {
+            stream->closed = true;
             virStreamEventRemoveCallback(stream->st);
             virStreamAbort(stream->st);
         }