[Spice-devel] [PATCH 12/13] server/red_channel: error channel if alloc_msg_buf fails (returns NULL)

Alon Levy alevy at redhat.com
Tue Dec 7 04:44:34 PST 2010


---
 server/red_channel.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/server/red_channel.c b/server/red_channel.c
index cab56a0..3c1aede 100644
--- a/server/red_channel.c
+++ b/server/red_channel.c
@@ -92,6 +92,11 @@ static void red_peer_handle_incoming(RedsStreamContext *peer, IncomingHandler *h
         if (handler->msg_pos < handler->header.size) {
             if (!handler->msg) {
                 handler->msg = handler->alloc_msg_buf(handler->opaque, &handler->header);
+                if (handler->msg == NULL) {
+                    red_printf("ERROR: channel refused to allocate buffer.");
+                    handler->on_error(handler->opaque);
+                    return;
+                }
             }
 
             bytes_read = red_peer_receive(peer,
-- 
1.7.3.2



More information about the Spice-devel mailing list