]> gitweb.hhaalo.de Git - mv_none_space.git/commitdiff
fix some memory leak
authorBastian Dehn <hhaalo@arcor.de>
Thu, 2 Oct 2025 17:38:04 +0000 (19:38 +0200)
committerBastian Dehn <hhaalo@arcor.de>
Thu, 2 Oct 2025 17:38:04 +0000 (19:38 +0200)
src/main.c

index 004b4d782cd85653e38125ae35a65ac4587b430c..d5a811e968ce3543fab38c3d15ce9b4be82b9d41 100644 (file)
@@ -44,14 +44,16 @@ void rename_file(const char* input, const char* output)
 
 void rename_files(const char* dir_path, rename_ptr renamefunc)
 {
+       char* output = NULL;
+       char* dirname = NULL;
        glob_t* files = get_files(dir_path);
 
        for (int i = 0; i < files->gl_pathc; i++) {
-               const char* output = renamefunc(files->gl_pathv[i]);
+               output = renamefunc(files->gl_pathv[i]);
                rename_file(files->gl_pathv[i], output);
 
                if (is_dir(output)) {
-                       const char* dirname = escape(output);
+                       dirname = escape(output);
                        rename_files(dirname, renamefunc);
                }
        }
@@ -59,6 +61,10 @@ void rename_files(const char* dir_path, rename_ptr renamefunc)
        globfree(files);
        free(files);
        files = NULL;
+       free(output);
+       output = NULL;
+       free(dirname);
+       dirname = NULL;
 }
 
 int main(int argc, char* argv[])