From: Michal Privoznik Date: Mon, 11 Jun 2012 12:21:00 +0000 (+0200) Subject: rpc: Fix memleak in virNetMessageEncodeHeader X-Git-Tag: v0.9.13-rc1~116 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=539e9b34b90e4d63d07e471d6e24eeba7f1bb1db;p=thirdparty%2Flibvirt.git rpc: Fix memleak in virNetMessageEncodeHeader My latest patch for RPC rework (a2c304f6872) introduced a memory leak. virNetMessageEncodeHeader() is calling VIR_ALLOC_N(msg->buffer, ...) despite fact, that msg->buffer isn't VIR_FREE()'d on all paths calling the function. Therefore, rather than injecting free statement switch to VIR_REALLOC_N(). --- diff --git a/src/rpc/virnetmessage.c b/src/rpc/virnetmessage.c index dc4c2127a8..82d5f8d16e 100644 --- a/src/rpc/virnetmessage.c +++ b/src/rpc/virnetmessage.c @@ -219,7 +219,7 @@ int virNetMessageEncodeHeader(virNetMessagePtr msg) unsigned int len = 0; msg->bufferLength = VIR_NET_MESSAGE_MAX + VIR_NET_MESSAGE_LEN_MAX; - if (VIR_ALLOC_N(msg->buffer, msg->bufferLength) < 0) { + if (VIR_REALLOC_N(msg->buffer, msg->bufferLength) < 0) { virReportOOMError(); goto cleanup; }