From 380b5e9dd70edc79d13fe07210fc7ff2c004e842 Mon Sep 17 00:00:00 2001 From: Alon Levy Date: Tue, 7 Dec 2010 12:57:06 +0200 Subject: [PATCH] server/red_channel: error channel if alloc_msg_buf fails (returns NULL) --- server/red_channel.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/server/red_channel.c b/server/red_channel.c index cab56a0d..3c1aedeb 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,