diff options
Diffstat (limited to 'file.c')
| -rw-r--r-- | file.c | 6 | 
1 files changed, 2 insertions, 4 deletions
@@ -1,5 +1,6 @@  #include "file.h"  #include <dirent.h> +#include <gtk-3.0/gtk/gtk.h>  #include <libgen.h>  #include <stdio.h>  #include <stdlib.h> @@ -27,7 +28,6 @@ int scan(const char *file_name)  {      struct dirent **name_list;      char *dir_name = dirname(strdup(file_name)); -    size_t dir_name_len = strlen(dir_name);      file_list_count = scandir(dir_name, &name_list, image_filter, alphasort);      if (file_list_count < 0) {          return -1; @@ -39,9 +39,7 @@ int scan(const char *file_name)      while (i < file_list_count) {          if (!strcmp(file_basename, name_list[i]->d_name))              curr_file_index = i; -        file_list[i] = malloc( -            (strlen(name_list[i]->d_name) + dir_name_len + 2) * sizeof(char *)); -        sprintf(file_list[i], "%s/%s", dir_name, name_list[i]->d_name); +        file_list[i] = g_build_filename(dir_name, name_list[i]->d_name, NULL);          free(name_list[i]);          i++;      }  | 
