iter: remove unnecessary indirection in free_dirs
authorChris Nisbet <chris@nisbet.kiwi.nz>
Fri, 24 Jan 2020 17:43:14 +0000 (06:43 +1300)
committerBartosz Golaszewski <bgolaszewski@baylibre.com>
Sat, 25 Jan 2020 11:21:40 +0000 (12:21 +0100)
It is not necessary to pass the address of the 'dirs' variable to
dirs_free(), so this commit removes the unecessary indirection.

Signed-off-by: Chris Nisbet <chris@nisbet.kiwi.nz>
Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
lib/iter.c

index a4d883a166cedc99d9e2882e73c4f2aa87b9eb0f..bfd28523b8069855a5aae7b19841c4af2db52653 100644 (file)
@@ -28,13 +28,13 @@ static int dir_filter(const struct dirent *dir)
        return !strncmp(dir->d_name, "gpiochip", 8);
 }
 
-static void free_dirs(struct dirent ***dirs, unsigned int num_dirs)
+static void free_dirs(struct dirent **dirs, unsigned int num_dirs)
 {
        unsigned int i;
 
        for (i = 0; i < num_dirs; i++)
-               free((*dirs)[i]);
-       free(*dirs);
+               free(dirs[i]);
+       free(dirs);
 }
 
 struct gpiod_chip_iter *gpiod_chip_iter_new(void)
@@ -69,7 +69,7 @@ struct gpiod_chip_iter *gpiod_chip_iter_new(void)
                        goto err_close_chips;
        }
 
-       free_dirs(&dirs, num_chips);
+       free_dirs(dirs, num_chips);
 
        return iter;
 
@@ -85,7 +85,7 @@ err_free_iter:
        free(iter);
 
 err_free_dirs:
-       free_dirs(&dirs, num_chips);
+       free_dirs(dirs, num_chips);
 
        return NULL;
 }