]> git.openfabrics.org - ~shefty/libibverbs.git/commitdiff
Fix minor memory leaks
authorRoland Dreier <rolandd@cisco.com>
Thu, 1 Jun 2006 05:41:41 +0000 (05:41 +0000)
committerRoland Dreier <rolandd@cisco.com>
Thu, 9 Nov 2006 19:36:33 +0000 (11:36 -0800)
The result of asprintf needs to be free when no longer needed.

Signed-off-by: Roland Dreier <rolandd@cisco.com>
ChangeLog
src/device.c
src/init.c

index 12ff6806268cdad99493219d729c2e829de9e0a2..41790e28b7509f09f3f3416f82a6162f80278a31 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2006-05-31  Roland Dreier  <rdreier@cisco.com>
 
+       * src/init.c (find_drivers), src/device.c (ibv_open_device): Fix
+       memleaks: the result of asprintf() needs to be freed when we're
+       done with it.
+
        * examples/asyncwatch.c (event_name_str): Print human-readable
        form of IBV_EVENT_CLIENT_REREGISTER.
 
index 3ab6cebc11c464d8c0bb34bfeadc15f457a44922..4eee31c77d564826111a2ba457ae86f0cee2ff2e 100644 (file)
@@ -119,6 +119,8 @@ struct ibv_context *ibv_open_device(struct ibv_device *device)
         * provider needs to mmap() the file.
         */
        cmd_fd = open(devpath, O_RDWR);
+       free(devpath);
+
        if (cmd_fd < 0)
                return NULL;
 
index 4b943b81066dcd27aecd9c6ab608a48059d689b6..2e45a55e2b45c4f1d1ef2a49ac1d972e02b0c55d 100644 (file)
@@ -106,6 +106,8 @@ static void find_drivers(char *dir)
        asprintf(&pat, "%s/*.so", dir);
 
        ret = glob(pat, 0, NULL, &so_glob);
+       free(pat);
+
        if (ret) {
                if (ret != GLOB_NOMATCH)
                        fprintf(stderr, PFX "Warning: couldn't search %s\n", pat);