[lvm-devel] LVM2/daemons/common daemon-client.c
zkabelac at sourceware.org
zkabelac at sourceware.org
Mon Feb 27 11:49:17 UTC 2012
CVSROOT: /cvs/lvm2
Module name: LVM2
Changes by: zkabelac at sourceware.org 2012-02-27 11:49:16
Modified files:
daemons/common : daemon-client.c
Log message:
Do not hide deallocation of buffer
As API is passing structures by value, do not leave
the function which created buffer and keeps valid pointer
look like it would be some memory leak and move
free of buffer from inner function - makes more obvious,
how is the memory management handled.
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/daemons/common/daemon-client.c.diff?cvsroot=lvm2&r1=1.15&r2=1.16
--- LVM2/daemons/common/daemon-client.c 2012/02/26 08:46:28 1.15
+++ LVM2/daemons/common/daemon-client.c 2012/02/27 11:49:16 1.16
@@ -62,8 +62,6 @@
if (!write_buffer(h.socket_fd, rq.buffer, strlen(rq.buffer)))
reply.error = errno;
- dm_free(rq.buffer);
-
if (read_buffer(h.socket_fd, &reply.buffer)) {
reply.cft = dm_config_from_string(reply.buffer);
} else
@@ -93,6 +91,8 @@
return err;
repl = daemon_send(h, rq);
+ dm_free(rq.buffer);
+
return repl;
}
More information about the lvm-devel
mailing list