]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
rpc: Fix memleak in virNetMessageEncodeHeader
authorMichal Privoznik <mprivozn@redhat.com>
Mon, 11 Jun 2012 12:21:00 +0000 (14:21 +0200)
committerMichal Privoznik <mprivozn@redhat.com>
Mon, 11 Jun 2012 15:02:49 +0000 (17:02 +0200)
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().

src/rpc/virnetmessage.c

index dc4c2127a8c38116218405c7d79de2e0be6a3236..82d5f8d16e65e4d676434d223b77cd7326ee1931 100644 (file)
@@ -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;
     }