[Spice-devel] [PATCH spice-server 2/2] server/red_channel: do not attempt to write if the channel client is disconnected

Yonit Halperin yhalperi at redhat.com
Thu May 31 00:04:06 PDT 2012


The red_channel_client_event call to red_channel_client_receive might result
in a disconnected channel client. The following call to
red_channel_client_push may call to red_peer_handle_outgoing with a
disconnected socket.
---
 server/red_channel.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/server/red_channel.c b/server/red_channel.c
index de50047..9a48e77 100644
--- a/server/red_channel.c
+++ b/server/red_channel.c
@@ -305,6 +305,10 @@ static void red_peer_handle_outgoing(RedsStream *stream, OutgoingHandler *handle
 {
     ssize_t n;
 
+    if (!stream) {
+        return;
+    }
+
     if (handler->size == 0) {
         handler->vec = handler->vec_buf;
         handler->size = handler->cb->get_msg_size(handler->opaque);
-- 
1.7.7.6



More information about the Spice-devel mailing list