From: Bastian Dehn Date: Sun, 31 Aug 2025 09:06:36 +0000 (+0200) Subject: stat on heap X-Git-Url: https://gitweb.hhaalo.de/?a=commitdiff_plain;h=f7d007135beff10989e5960bad58a123db48dbd5;p=discspan.git stat on heap --- diff --git a/libs/spandisc/src/filehandler.c b/libs/spandisc/src/filehandler.c index f5eb874..e611a52 100644 --- a/libs/spandisc/src/filehandler.c +++ b/libs/spandisc/src/filehandler.c @@ -12,22 +12,24 @@ void fill_array_from_file(FILE *in, medium_t *srcdata) { char* path = malloc(sizeof(char) * MAX_PATH_LENGTH); memset(path, 0, MAX_PATH_LENGTH); - struct stat st; + struct stat* st = malloc(sizeof(struct stat)); while (fscanf(in, "%[^\n]\n", path) == 1) { // Lese Dateieigenschaften in st struct - stat(path, &st); + stat(path, st); srcdata->filearray = (file_size_t *) realloc(srcdata->filearray, (srcdata->length + 1) * sizeof(file_size_t)); strcpy(srcdata->filearray[srcdata->length].name, path); - srcdata->filearray[srcdata->length].type = st.st_mode; - srcdata->filearray[srcdata->length].fsize = st.st_size; + srcdata->filearray[srcdata->length].type = st->st_mode; + srcdata->filearray[srcdata->length].fsize = st->st_size; srcdata->length++; } free(path); path = NULL; + free(st); + st = NULL; } void read_input_file(const char *input, medium_t *srcdata)