]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
fix: memory leak in mdmon_pid()
authorPrzemyslaw Hawrylewicz Czarnowski <przemyslaw.hawrylewicz.czarnowski@intel.com>
Thu, 22 Apr 2010 22:10:32 +0000 (23:10 +0100)
committerDan Williams <dan.j.williams@intel.com>
Mon, 17 May 2010 22:38:34 +0000 (15:38 -0700)
devnum2devname() returns pointer to memory allocated with strdup.
It must be released to prevent memory leak.

Signed-off-by: Przemyslaw Czarnowski <przemyslaw.hawrylewicz.czarnowski@intel.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
util.c

diff --git a/util.c b/util.c
index 25f1e56ae01d05277765ef6c4779ac08d6a11f75..8315200b4f3bd19a7b2a8fbca636a846c7d31c27 100644 (file)
--- a/util.c
+++ b/util.c
@@ -1532,7 +1532,11 @@ int mdmon_pid(int devnum)
        char pid[10];
        int fd;
        int n;
-       sprintf(path, "%s/%s.pid", pid_dir, devnum2devname(devnum));
+       char *devname = devnum2devname(devnum);
+
+       sprintf(path, "%s/%s.pid", pid_dir, devname);
+       free(devname);
+
        fd = open(path, O_RDONLY | O_NOATIME, 0);
 
        if (fd < 0)